◆ 2012/02/26
したこと:
五目並べの件:
終了!
近いうちにソースごと公開すると思いますー。
春が近いので露出! ドキドキ。
次のこと:
目下、自分がやらなければならないことは、
去年の暮れから手を着け始めた、ゲームをするおはなしのAVGを作ること。
その前に片付けなければならない雑事として、
まずは「五目並べの件」が終了。
結局目的は何なんでしたっけ?
確か3つほど目的があって、
1つは「ウィンドウズアプリでござい!」というものを一度作っておくこと。
それについては、わりといい感じになったと思います。今後の資産としても満足。
もう1つは、ネイティブアプリの威力なら、素朴なαβ探索でも、
お気軽に深読みできるんじゃないかと思ったので、実際どうなのか、実験。
手応えとしては、ネイティブアプリといえども、
無造作に深読みするのは無謀っぽい、という感じ。
もう1つの目的は秘密。
それで、次は、あと、何をするのでしたっけ。
Javaでチャットソフトのサンプルをまとめておく。
サイキックブロッカーズのネット対戦版を作る前に試しに作ったものが
どこかにあったと思うので、探してきて、整える。
それと、C#でも何か1つ作っておくことになっていたのでした。
何を作りましょう?
じゃあ、Javaでチャットのサーバーを作って、クライアントをC#で。よしよし。
そんだけでしたっけ?
他にもこまごまとあるような気がしてきたー。
思い出す前にさっさと片付けてしまう。
とりあえず、Eclipseをダウンロード。
なんだか、ひさびさ。
どうせなら新しめのバージョンを、ということで、
今は3.7あたりが新しめなのでしょうか??
自分の記憶と全然違う使い方になってたらどうしようかと不安でしたが、
そんなには変わってなさそう。
起動時のロゴが同じだった時点でかなりの安心気分。
思ったこと:
オープンソースと言えば、
Eclipseもオープンソースで開発されているそうですね。
今までは特に気に留めませんでしたが、
今回ダウンロードしたとき、ああ、そうなのか、と思いました。
バージョンを重ねても見た目がほとんど変化していないのは、
商売っ気がないから、派手なモデルチェンジで衆目を集めようとしたりもしない、
ということだったりもするのかな、と、なんとなく短絡的に連想しました。
何か他に、オープンソースに関して、気になっていたことがあったような気がして、
なんでしたっけ、なんでしたっけ、
ライセンス。そう、ライセンスの件。
なんだかいろんなライセンスがありますけど、
あれって、誰が決めてるのでしょう? 勝手に決めていいのでしょうか?
「ソースを改変した場合はオデコに油性ペンでその旨を記載して街を歩くこと」
というライセンスを作れば、みんな守ってくれるのでしょうか?
と疑問に思っていたのですが、
オープンソースのライセンスを認定する機関のようなものがあるそうですね。
「このライセンスはオープンソースのライセンス、と、認めてあげる・あげない」
みたいな審査が、具体的にどういうシステムなのかはよくわかりませんが、
ともかく、そういう認定をしている機関があって、
おかげで、オデコに油性ペンで書かなくて済んでいるのですね。
となると、次の疑問は、そうして「公認された」既存のライセンスを、
自分が公開するソフトウェアに、勝手に当てはめてもいいのかどうか?
「おいらが公開するこのソフトは、あの有名な○○ライセンスで公開する!」
と勝手に言ってもいいのでしょうか? ライセンスを使うにも許可がいるのでしょうか?
そして、そういう、ライセンスの使用認定、みたいなものがあるとすると、
規定違反を取り締まる活動をしてくれたりするのでしょうか?
それとも、単に印籠を見せびらかすだけのことなのでしょうか?
別に、今度公開するものについて、
「オープンソースだぜ! オラオラ」と言いたいわけではないのですが、
どうやら「オープンソース」という単語自体が、
言葉通りの意味の「オープン」な「ソース」という意味ではなく、
特定の固有な思想のエンブレムであるようで、
下手に「オープン」な「ソース」として公開すると、
ひょっとすると、「オープンソースさん」の、シマに足を踏み入れてしまうことに、
図らずも、なってしまう??? という懸念。
たとえるなら、ただなんとなく道端のゴミを拾っただけなのに、
「ボランティア活動ですね!」と言われてしまう居心地の悪さ?
世の中の仕組みがよくわからないので、ともかく勉強をしていこうと思います。
ところで「素材」の場合は、別に、名のあるライセンス、のような概念はありませんが、
自分のイメージでは、基本的に、大多数の人は、モラルを守って使っている印象があります。
自分としては、ソースを公開するというのは、
どちらかというと、そのぐらいの感覚で考えてる感じです。
「オープンソースぅ!」というほど大げさなものではなくて…。
とは言いながら、世の中に「オープンソースぅ!」というものがあるということは、
もしかして、何か、メリットがあるのかな?? という期待感もあります。
◆ 2012/02/22
したこと:
五目並べの件:
・棋譜を保存中に「保存中…」と、ささやかに表示するようにした
一瞬で完了、というわけにはいかなくて、
なんだか固まったようにも見えてしまうので、
「固まってないですよ、保存中ですよ」と意思表示。
途中でキャンセルできるわけでもないのですが、ささやかな声かけ事案。
・プログレスバーの仕様を少し修正
バーの中に「○○%」と数字を表示しているのですが、
普通に使うと直前の数字が重なって表示されてしまう。
ので、バーを使う側で、値を更新するたびに描画しなおさなければならない、
というダサイ仕様だったので、
使う側で気にしなくても、プログレスバーの内部で面倒を見るように修正。
できあがりを見る分にはどちらでも同じなのですが、
多分ソースを公開すると思うので、少しでも恥ずかしくないようにお片づけ。
・その他バグ修正
直ったっぽい。
じゃあ、どうしましょう。
心残りは多々ありますが、これ以上の拡張はしないことにして、
ヨセに入りましょう。
具体的には何をすればいいのでしょう?
ソース内にハードコーディングしている文字列とかを、
どこかにまとめてstatic const にしておくとか。
使ってないファイルを取り除いておくとか。
ドキュメント書いたりなんかもしちゃうのですか?
思ったこと:
少々神経質ながら、「無料」という言葉を聞くと、怪しい気配を連想してしまいます。
この前のタマゴの安売りの話の続きじゃないですが、
本当は有料であることを隠す目的で言う「無料」とか、
なんで堂々とお金を取らないのでしょう?
あるいは「そういうふうにするもんだ」と素朴に思い込んでいるだけなのか?
女性を見たら口説くのがマナー? 店員がいなければ万引きするのがマナー?
あんまり言うと心が汚れてしまうので、このへんにしておきます…。
きっと本当の問題は、もっと別の次元で、巨大に、根深く、網を張っていて、
このような、目の前に現れてきている個々のささやかな事象は、
その、ほんの片鱗、気配、でしかないのだろうと、いう気もします。
何を見据えて生きていくべきか?
個人主義に還元して溜飲を下げようとする呪文。
「結局本人が損をするだけだから」
仮に(仮に!)それが本当だとして、その理由で、万事OKなのか?
件の彼が痛い目に遭うさまを見て笑いものにするのが目的ではないはずなのです。
では何が目的か?
選挙における自分の一票はほぼ確実に無視されてしまいますが、
それでも、自分も世界の一員であり、
自分の行動は確実に世界つながっているはずで、
まずは、子供が見ている前で信号無視をしない。
それでも、犯してしまった失敗を誰かが見て、
「なーんだ、あの程度でいいのか」と思われてしまうようなことがあったら、
そこがきっと自力の限界。
大いなる他力の前では自力は無力だとは言うものの、
たかが自力、されど自力。今ここに、確実に生きている。
無視できない事実がここにある。
その事実の上でどう生きるか?
◆ 2012/02/21
したこと:
五目並べの件:
・盤面のサイズを一回り大きくした。
・DBファイルがない場合、起動時にCreate文とマスターデータ作成を行うようにした
・棋譜の検索画面で表示件数を指定できるようにした
・その他バグ修正
思考処理さんの深読み中にプログレスバーをつけているのですが、
深読みする設定にするとバーが動かない時間が長くて、固まったみたいに見えてしまう。
「固まってないですよ、考え中ですよ」
という意思表示をするのがバーの役割のはずなのに、
肝心なところで役に立ってくれてない。
そうは言っても、あまり頻繁にバーを更新すると、
そのせいで処理が遅くなってしまう。
出力系の処理って、重いのですね。
バーを更新するタイミングをどこに設定するか?
などなど、気になる箇所は多々ありますが、
凝ればキリがないので、バグが直り次第、終了する方向で。
バグ。
さぁ直ったぞ、と思って浮かれて動かしていると
また別のバグが。賽の河原。
いや、バグが見つかった、ということが、進展なのですよ。
なるほど。いいこと言いますね。
思考処理の内容は、まだまだボケがありますが、
人間から見るとボケに見えてしまう、ということであって、
バグというわけではないはず。
現在の仕様では、このへんが限界ということでしょうか。
深読みする設定にしても、処理が重くなるわりには、
あんまり強くなってる感じがしません。むしろボケが目立つような気がする。
待ち時間中に人間(私)も考えるからですか?
深読みしない設定だと、すぐにレスポンスが返ってくるので、
ぽんぽん打って、人間がミスをする、
というパターンが多いような気もします。時間攻め。
深読みしても成果が出にくいのは、
基本的に総当り読みなので、無駄な読みが多いということですか。
読んだ結果、いい手があるかどうか、という暗中模索。
人間(私)の場合は「このへんにいい手がありそうだぞ」とアタリをつけて、
そこを中心に読んでいる?
または「いい形」を先にイメージして、
そこからの逆算で打ち筋を探しているような気もします。
その分、見落としや勘違いも頻発する、ということでしょうか。
最初に目的を定めて、そこに向かって読みを進めようとする。
その目的の定め方が、いわゆる、経験、ということ?
コンピューターを使う目的は人間が気付かない部分を補助することなような気がするので、
人間の思考方法を省みることは、それはそれで価値があるにしても、
究極的には、人間と同じになることに意味があるわけではないのだろうな、と思いつつ。
ドシロウト。ふわふわ。
思ったこと:
新たに技術を勉強するのがツラくなってきた気がします。
歳のせいでしょうか。
新しい技術が出てきてますよ、という情報を見聞きするたびに、
今まで自分がやってきたことを否定されるような気分がしてしまいます。
と、同時に、
ゲーム?を作るための「こんな便利なものがありますよ!」
という情報に触れれば触れるほど、
だからゲーム?なんか作ってなんの意味があるの?
という冷え冷えとした気分も感じてしまいます。
「これがあれば便利であるはず」という欲望に従って、
そのようなものが作られました。
さて、それによって一体何がしたかったのか?
あるいは、難しい技術を必要とする高嶺の花だかこそ、
そこに価値を感じていた、という側面も否定できない気がします。
その実、「今まで自分がやってきた」範囲でも、
自分にとって難しいと感じる部分や、
目的に対して本質ではないと感じる部分については、
規制のライブラリを使うなど、楽をする努力を惜しんでいないのです。
そこのところは、まさに、くだらないプライド、でして、
そもそもDirectXからして「便利なライブラリ」なのですね。
意地を張るなら、OSから作らねばなりません。
石器時代からやり直さねばなりません。
そういえば石器の作り方知らないなぁ。
今タイムマシンで石器時代に放り出されたら、完全に役立たずです。
> 「これがあれば便利であるはず」という欲望に従って、
物理エンジンを使ってテトリスをネタにしたジョークソフト?を見ました。
ブロックが実物さながらの動きで乱雑に積み上がっていく様子は
それなりに見ごたえがありました。
しかし当然ですが、ゲームは成立しません。
もともと「積み上げる」という内容ではありますが、
物理的なルールを単純化したところにゲームを成立させているのであって、
本当に物理現象さながらに動いてしまっては困るのですね。
ネットゲーム。
遠く離れた相手と対戦できたらいいな…、
と夢見ていた記憶がありますが、
実際にそれが当たり前になった今、果たしてどうか?
公開から時間が経つと、一部の強い人ばかりが幅を利かせるようになって、
まともに遊べなくなってしまう、というのがよくあるパターンだと思います。
ネットによって距離感がなくなれば、
都合の悪い相手とも距離感がなくなります。怨憎会苦。
実際にそうなった現状を見れば当然と思えますが、
実現する前は夢しか見ていませんでした。
もちろん、現状に対して改善の手を模索するという取り組みも可能ですが、
キリがないような気もしてしまいます。
物理エンジンを活かしたゲームがあるだろう、
上手なネットの使い方があるだろう、
しかし、フタを開けてみれば同じことの繰り返しになるのではないか?
結局のところ、何がしたかったのか?
欲望。
現状に対して「あんなこといいな、できたらいいな」と欲望を抱く。
「みんなみんなみーんな叶えて」みて、実際にどうなるのか?
本当にそんなことがしたかったのか?
現局面と、指したい手。
一体何手読めばいいのでしょう。
どんな評価関数を使えばいいのでしょう。
生きているというのは瞬間のことであって、
向かう先、というのは便宜的なものでしかない?
> 規制のライブラリを使うなど、楽をする努力を惜しんでいないのです。
検索してみると、こんなものもあったのか、というような、
全然知らなかったものもいくつも見つかります。
どれも相当な作り込みようで、
世の中には菩薩様がたくさんいらっしゃるー、と、ありがたい限りです。
技術的にはいろいろあるように見えたりもしますが、
しかし、我々が実際にやりたいことって、わりと、限られてますよね?
・画面上の任意の位置に任意の画像を出す
・任意のタイミングで任意の音を出す
・キー入力受け付ける
大体そんなところじゃないでしょうか。
3Dにしても、なんとなく画面内にXYZの空間があって、
なんとなくモデルデータを配置できれば満足のはず。
たったそれだけのことのために、多くのライブラリやソフトが乱立し、
それぞれに複雑な使い方があります。
ライブラリを使うためのライブラリが必要になってしまう。
「プログラミングの初心者が難しいことを考えなくてもゲームを作れるように」
と銘打って、巨大なライブラリが作られる。
結局、それの使い方を覚える作業が発生してしまう。
そして大概、システムの根元の部分をうまいぐあいに隠蔽してくれていたりして、
独自の世界が構築されているので、その使い方を覚えれば覚えるほど、
中で実際に行われていることからは知識が遠ざかってしまう印象があります。
> それぞれに複雑な使い方があります。
中で実際にやっていることを隠蔽しつつ、
それでいて、細かな使い方をするためのオプション設定も可能にするために、
(独自の)APIが多岐に渡ることになり、
隠蔽した内部とやりとりをするために、
(独自の)複雑なインターフェイスも必要になってくる、ということでしょうか。
もともと複雑なものを、無理に簡単に見せようとして、
結局、余計にややこしくなってしまってたりする?
嘘の上塗り。
> ライブラリを使うためのライブラリが必要になってしまう。
しかし、DirectXだってビデオカードの機能を?利用するためのライブラリですし、
拡大解釈すれば、Java は C++ のラッパーライブラリで、
C言語はアセンブラのラッパーで、アセンブラはマシン語のラッパーで、
マシン語は CPU にアクセスするための? なんたらかんたら?
道具、というものが、その繰り返し、ということでしょうか?
> しかし、我々が実際にやりたいことって、わりと、限られてますよね?
>
> ・画面上の任意の位置に任意の画像を出す
> ・任意のタイミングで任意の音を出す
> ・キー入力受け付ける
実際、自分なりに、そういうメソッドを作りながらプログラミングしますよね?
公開するようなもんじゃないにしても、「マイ・ライブラリ」を作りながら。
要は、道具を自分なりに使いやすいように調整する、
ということでしょうか。
だからこそ、あまり親切すぎるライブラリは、かえって使いにくいのかもしれません。
隠蔽されている内部にアクセスするためのインターフェイスが複雑で、
結局、自分なりにそれらをまとめた関数を作ってから使うことになってしまう。
だったら最初から隠蔽されてない方がいいんじゃないのか?
その労力を、もともと内部でやっていることを理解することに
向けた方がいいんじゃないのか?
分厚い手袋をはめて魚をさばいている。
むしろ素手の方がやりやすいんじゃないのか?
> そして大概、システムの根元の部分をうまいぐあいに隠蔽してくれていたりして、
> 独自の世界が構築されているので、その使い方を覚えれば覚えるほど、
> 中で実際に行われていることからは知識が遠ざかってしまう印象があります。
隠蔽するのって、あんまりよくない気がする気がします。
どうせ、それほどわかりやすくなんかならないし、
使えば使うほど、実際の知識?から遠ざかってしまう。
では、どうすればいいのでしょう?
過保護に隠蔽するのではなく、
手を引いてガイドする、道筋を示す、ような感じ?
実際の中身から遠ざけるのではなく、無理なく近づいていけるように。
どうしましょう。
作ろうかしら。また、いらん欲望ですなぁ。煩悩具足。
> 過保護に隠蔽するのではなく、
> 手を引いてガイドする、道筋を示す、ような感じ?
具体的な形はまだ見えませんが、
そうなってくると、「俺製のライブラリでござい!」
という、アイデンティティは、ぼやける、ということですよね。
自己と非自己の境界線が、あいまい。
そういう意味では、すでに世の中に存在しているのかもしれません。
「○○っていうライブラリを使ってますよ!」
という、明確な同一性がないので
「これ」という形で目の前に現れてくるわけではない、というだけのことで。
◆ 2012/02/19
したこと:
五目並べの件:
動かしながら美修正。じゃない、微修正。
いきなり素敵な変換が出ました。
さて。
ファイル読み込み関連でバグがあったので修正。
GetOpenFileName() でダイアログを開いてファイルを読み込むとき、
フォルダを移動すると、カレントディレクトリが移動してしまうのですね?
以降のファイル読み込みがことごとく失敗して、何事かと思いました。
GetOpenFileName()実行前のカレントディレクトリを覚えておいて、
実行後に戻す、みたいな処理を追加することで解決しましたが、
そんな病んだことをしなきゃいけないものなのでしょうか?
なにかもっと日当たりのいい方法があるでしょう。ないとおかしいでしょう。
というわけで検索してみたら、やっぱりあるのですね。
OFN_NOCHANGEDIRフラグで華麗に解決。
いや、しかし、目の前の問題は解決しましたが、
わだかまりは消えません。
そう、こんなフラグがあるということは、
むしろカレントディレクトリが移動する方がデフォルトの動き、
ということなのですよね。
「何も言わないなら、おいらはそうしますよ?」
そういうものなのでしょうか?
私、ますます、あなたがわからないわ。
思ったこと:
タマゴを買うつもりでスーパーに行ったのですが、
運が悪いことに、安売りをしていました。
安売り自体はいいのですが、「1000円以上お買い上げの方に限り」
という条件がついているのですね。
もちろんタマゴ以外にもこまごまと買うつもりでしたが、
自分の場合、1回の買い物で1000円を超えることはまずありません。
安売りをアテにしていたわけではなく普通の値段で買う気マンマンだったのですが、
条件を満たさない場合にはいくらなのか? というのはどこにも書いてありません。
でっかい文字で「88円! オラオラ!」と書いてあって、
その横に font-size:8pt; ぐらいの小さい文字で「1000円以上お買い上げの方に限り」
と書いてあるのです。
「ウソは言ってませんけど何か?」というふてぶてしい態度。
憎たらしいにも程があります。
これを無防備にレジに持っていって、
「お客さまー、申し訳ありませんがこちらのセールは
1000円以上お買い上げの方のみとなっておりましてー」
なんて言われてしまったらショックで寝込んでしまいます。
参加した覚えのないゲームに勝手に参加させられて、
勝手に負けたことにされたような、理不尽さ。
しかし条件を満たさない場合の値段が書いてないということは、
1000円以上お買い上げじゃない客は客じゃないということですね。了解!
仕方がないので少し離れた別のスーパーで買うことにして、その店を出ました。
何も買わずに出たので万引きをしたと思われたに違いありませんが、仕方がありません。
別のスーパーに行ったついでに、
家電量販店でアナログスティック付きのゲームパッドを買ってきました。
前から気になっていたアナログスティック専用のゲームをプレイするぞ!
その前にバトルコールをクリアしよう。
忙しい忙しい。
◆ 2012/02/18
したこと:
五目並べの件:
思考処理を一般化する件。
やっとソースが書けました。
これでデバッグができる!
少し動かしてみたところ、わりといい線いってる感じ。
まだときどきボケが出ることがありますが、大筋では合ってます。
(デフォルトルールで3連を止めに来てくれたときは感動! ヤッター! いい子!)
ルールを変えてみると、人間(私)が負けることもしばしば。
デフォルトルールなら人間の方が経験で上回るのに対し、
変更したルールでは、思考処理さんの方がミスが少ないようです。素晴らしい。
処理速度の方も、かなり複雑な処理を仕込んだにも関わらず、あまり落ちてません。
相変わらずバラつきは大きいものの、大体、秒間10000手前後。
どうしましょうかね、表面的にはいい子に振舞ってくれてる感じなので、
これで完成ってことにしてしまってもいいのかも。
どうちまちゅか? もう少し本人と相談しながらいじってみることにしましょうかー。うんうん。
思ったこと:
昨日はちょっとした悟りのようなものを得て舞い上がってしまいましたが、
冷静になって考えてみる。
> もし、人生に、目的、なんてものが、あるのだとしたら、
> それは、きっと、
> 人間に生まれてきたこと、自分として生まれてきたこと、を、
> よろこべるようになること、でしょうか?
たしかに悪くはないと思うのですが、
あくまでも自分の中で、気持ちを整理するための方針、ということですよね。
これを他人から言われてしまうと、なんだかおかしなことになってしまいそうです。
たとえば親に言われるとか。
最悪ですね。最悪ですね。
最も悪いと書いて最悪ですね。
想像しただけで身の毛がよだちます。
いい考え方だとは思うのですが、
それだけに、悪用されると、とんでもないことになってしまいそうです。
そうですね。悪用できてしまいますね。
あまりおおっぴらに広めてよい考え方ではないのかもしれません。
あくまで自分のこととして探求した先に閃きとして得られるような、
そういう仕方で隠蔽しておく必要があるような、そんな気がしてきました。秘奥義。
ここを読んでるのは、熱心なサイトAファンである少数民族のみなさんだけだと思いますので、
大丈夫だと思いますが、あんまり誰にでも話しちゃダメですよー。
針千本飲ませちゃいますよー。ネット経由で。
◆ 2012/02/17
思ったこと:
もし、人生に、目的、なんてものが、あるのだとしたら、
それは、きっと、
人間に生まれてきたこと、自分として生まれてきたこと、を、
よろこべるようになること、でしょうか?
うん、それなら、悪くはない、かも…?
◆ 2012/02/15
したこと:
五目並べの件:
思考処理を一般化する件。
考えてても進まないので、ともかくソースを書いてみる。
いつものパターン。頭が悪いので手で考えるのです。
いつもは大体これで、なんとなく、なるようになってくれるのですが、
今回は、やっぱり進んでくれません。
実際に書いてみることで見えてくるものもあって、
なので、書きながら、なるほど、と思ったりもしつつ、
でもやっぱり、何かが変。何が変?
欲しい情報は何か?
今この状態で、すでに勝負がついていると言えるかどうか?
たとえば放置されてる3連があったら、勝負ありですよ、みたいな。
どっちの立場で?
思考処理さん自身の立場で見るのか?
先読みの過程における、そのときの手番の人の立場で見るのか?
判定処理の中でも、折り返し、が、あるのですよね? ターンの。
現局面で、私の勝ちが確定してますよ。
現局面で、私の負けが確定してますよ。(=相手の勝ちが確定してますよ)
その判定処理の中で言っている「私」というのは、誰のこと?
思考処理さん自身のこと?
先読みの過程における、その時点で手番を持っている方、のこと?
それとは別に、両方の立場で、判定処理を呼ぶの?
両方の立場で呼ぶにしても、
実際には、そのとき、どちらかの手番、なのですよね?
それをあえて無視して、「仮に黒番だったら」「仮に白番だったら」ということ?
それをやってしまうと、判定処理の内部での、手番交代判定が、狂ってくるような。
判定処理の内部での、手番交代判定?
そこで別に、立場を入れ替えて、再帰するわけではないのですよね?
それをやってしまうと、先読みしているのと同じで、
そうじゃなく、これは、その時点の局面だけを見て、判断できることを判断する、
という判定であるはずで。
文字で書いてみたら、あわよくば話が見えてくるかとも思ったのですが、
そうはいかないようです。
こうして考えて? いても、少し離れたところで別の人が考えている感じがします。
考えている内容に、気持ちが入っていきません。
そんなに難しいことをしているわけではないと思うのですが、
いや、難しいですって。えー、そう?
何か、あと、ちょっとで、するっと、どうにかなりそうな、
ともかくここを切り抜けないと、生きることも死ぬこともできんのですから、どうにかする。
誰かが代わりにやってくれるわけじゃないのだから、
この作業自体は、おいらが終わらせない限り、宇宙が終わっても終わらないままです。
思ったこと:
思うことはいろいろあるのですが、
五目並べの件みたいな、はかどっていない作業があると、
そんなこと考えてる場合じゃないという気がしてしまって、
そうは言ってもその作業の方も進まなくて、
どこにもいけない。
オープンソース。
そう、オープンソース。
について、何か少し考えたことがあったような気がするのですが、思い出せません。
◆ 2012/02/14
したこと:
五目並べの件:
思考処理を一般化する件。
簡単そうに思えていたものの、意外と話がまとまってくれません。
通常ルールで3連を止める必要があるのは、なんでなのですか?
次に4連を作ることができるから、
そのときに、片方が止まっていないと、そのまま5連を作られてしまうから。
ここで一つ混乱がある。
自分の立場で見るのか、相手の立場で見るのか?
たとえば現在の局面で、「黒の」3連があるとして、
その局面に対して、これから、「黒石を(1つ)」追加可能である、とする。
こういうふうに考えれば「どっちの番」という概念を整理できる?
「3連」という数字はどこから出てきたのか?
勝利条件が「5連を1組」だから、5−2=3、ということ?
「−2」はどこから出てきたですか?
止めるべき箇所、ということ?
つまり両端。
ん? じゃなくて? 私が打って、あなたが打って、手数が2回、の2?
ここにも混乱があるのですね。
3連が2箇所出来ている場合。
止めるべき箇所の数は?
どちらの3も両端が止まっていないとすると、4箇所。
なるほど。「何箇所止める必要があるのか?」で考えればいい?
3連の両端は「止めるべき位置」として計上するのですね?
計上するかどうかの基準は何なのでしょう?
2連はほっといてもいい。それはなぜ?
考えが全然まとまりません。
頭が悪い。頭が悪い。もう一回言おう。頭が悪い。
何か、こう、これをすると、スカッと頭が良くなる、みたいな、
おいしい方法が、ないですか? ありますよね? あるんでしょ?
もったいぶらずに教えなさいよ。教えなさーいーよーぅ。
思ったこと:
DirectX。
仕様がどんどん変わってついていけない。
そうでなくても、歳をとって頭や体が衰えれば、
頑張って身に着けたスキルも使えなくなる。そして死ねば何もできなくなる。
社会も自分も変化してしまう。
諸行無常。
ゲームの話から。
手軽であるほどよい、簡単であるほどよい、
その方向を追求した先には何があるのか?
それならば始めから、ゲームをしなければいい。
しかし、それでもゲームをする。それは一体どういうことか?
生まれてこなければよかった。
しかしそれでも生きている。それは一体どういうことか?
つまりそれこそが生きていることの意味、ということなのではないのか?
◆ 2012/02/13
したこと:
五目並べの件:
思考処理の内部にも連鎖判定を入れた。
思ったほど、速度には影響が出ていない様子。
秒毎の読み手数は以前と変わらず 10000〜20000程度。
バラつきが大きすぎてわからないだけで、
影響が出ていないわけがないと思いますが、
しかし体感的にクソ重くなってしまうという恐れていた事態は
起きなかったので、よかったです。
クソなんて言ってしまいました。お下品だわ。
あと何をするのでしたっけ?
これで一応、思考処理さんの方でも、最低限、ルール通りに先読みしてくれるようになったわけで、
あとは、あとは、評価関数。
ぐるっと遠回りして、やっと元の位置に戻ってきた気分。
「3は必ず止める」みたいなのを、ルールを変えてもそれなりに対応できるように、
何かうまいぐあいに一般化、できるといいなと思うので、しようと思うのですよー。
ついでにアプリ読み込み時に「読み込み中」のプログレスバーをつけてみました。
パッと見、ちゃんとしたソフトっぽくなってきましたよ。
何食わぬ顔で「できましたー」ってお披露目して、
その場を取り繕うには充分な出来映え。無意味な出来映え。
思ったこと:
たとえばパソコンを使わなければ
パソコンにまつわるトラブルに見舞われることが一切なくなる。
生きるのをやめれば病気にならない。
一番最初の原因は何かと言えば、生まれてきたことで、
だから生まれてこなければあらゆる問題とは無縁、
無縁、いい言葉ですね、そう、まさに無縁、でいられたはずなのですが、
他人を操ることができないのと同一の理由で、
それを望んでもどうにもならない気もします。
無縁じゃない。何の因果か因縁か。
私が死んでも他の人は生きていて、次から次へと誰かが生まれてくる、
同じように、私が生まれてこなくても、
他にたくさんの人が生きていて、次から次へと誰かが生まれてくる、
だから、わざわざ死んでも、または、何らかの因縁で、生まれてくること自体がなかったとしても、
それは単に、この身のことでしかなくて、
結局のところは同じなような気がしてきました。
生まれてこなければよかったはずなのに、
宇宙がある限り、どうにもならない?
閉じ込められている?
◆ 2012/02/12
したこと:
五目並べの件:
思考処理の速度向上を目論んで、五目並んでるかどうかの判定処理を書き直した。
今回試してみたのは、一つの列の中でありえる配石パターン全てについて
事前に連石判定を行ったデータをファイルに保存しておいて、
実際の判定処理の中ではファイルから読み込んだデータを参照する、というもの。
一つの列の中でありえる配石パターンはいくつあるかというと、
一列15マスの中に「黒」「白」「空白」「壁」の4通りがあって、
4の15乗=約10億通り、
これはちょっと多すぎ、と思っていたのですが、
よくよく考えてみると「黒」と「白」は区別する必要がなく、
相手の色の石は「壁」と同じ扱いで構わないので、
3の15乗=約1400万通り。
現実的な数字になってきました。
何かもうちょっとパターン数を減らす考え方がありそうな気がして仕方がないのですが、
思いつかないので、これで着工。
事前の判定ファイルを作る処理に時間がかかるのは別に構わないのですが、
作っておいたファイルをアプリ起動時に読み込むのに約3秒。微妙。
それにしても、最終的に読みの速度が上がるのかどうか、
不明なまま作業を続けるのは精神的につらいですね。
判定処理そのものは早くなるに違いないのですが、
その周辺のお膳立てがそれなりにややこしいので、そのあたりで減衰してしまいそう。
結果的にはそれなりに効果が出ました。
以前は1秒間の読み手数が約3000手だったのが、
この処理にすることで1秒間に約10000〜20000手読めるようになりました。
なぜこんなにバラつきが出るのかは気になるところですが、
実装した甲斐はあったようで、めでたしめでたし。
次はここに連鎖判定を追加しなければならないのですね。
今は連鎖が起きていることを知らずに思考している状態。
今回得られた効果と差し引いて赤字になりませんように。
思ったこと:
意味がない件。
Aに何の意味があるのか?
Aをたくさん手に入れるとBができるようになります。
Bができると何がいいのか?
Bができるようになると、Cに移動することができるようになります。
Cに移動できることの何がいいのか?
Cに行くとAがたくさん手に入るようになります。
あれ? だからAに何の意味があるの??
価値の体系が閉じている。
実際のところはきっと、
Bを目指してAにいそしんでいる、そのこと、が、
生きているということ、そのもの、で、
だから何の意味が、とか問うこと自体がピント外れだったりするのかもしれません。
自分が現にいる場所はAで、自分が現に向いている先がB。
それをA→B→C→…、と辿っていくのは想像の世界であって、現実ではない。
それは、あれじゃないですか、夢中になっている、という状態なのではないですか。
そうでもないですか? どうなのでしょう。
実際、A→B→C→A→B→C…のループを何周も実体験していて、
それでもなお、矢印に沿ってぐるぐる回り続けているというのが実際のところで、
価値の体系が閉じていることを知りつつ、
そこから出る方法を知らない。
「Aに何の意味があるの?」と澄んだ瞳で訊いてくる子供に対して、
「Bだから」と濁りきった目で回答する。
回答するための回答。相手を黙らせるための回答。問いを押し潰すための回答。
考えないことが目的。
価値の体系が閉じていることを知りつつ、
そこから出る方法を知らず、矢印に沿って回り続けるのみ。
他人の存在。
わからない、という性質。
閉じた体系の中に他人がいると、
閉じている、という事実が覆い隠される?
オンラインゲーム。
◆ 2012/02/11
したこと:
五目並べの件:
反映されていないルールを反映する作業。
連鎖現象に対応。
別にゲームを作るつもりはないのですが、
まるでゲームを作っているかのような気分でした。
画面のレイアウト的なことも、気が付き次第、適当に手を入れていくとして、
あとは思考処理さんに、変更後のルールをお伝えする作業。
ここが最後のヤマ場、の予定。
処理速度が懸念事項。
思考処理用の内部盤面表現に対して「ここに打った状態を生成してください」のときに、
連鎖処理を挟む必要がある。
以前、五目判定の箇所で速度アップのチューニングをしたところに
再び手を入れることになってしまう。
なにか効率のいい処理方法がないかなと、再び向き合うことになるのですね。
思ったこと:
言葉が出てきません。
◆ 2012/02/09
したこと:
五目並べの件:
反映されていないルールを反映する作業。
今日で完了、のつもりが、
ルールの組み合わせによっては連鎖が発生してしまうことに気付きました。
どうしましょう。処理が複雑になってしまう。工数が増えてしまう。
やめようかな。このルール。
畳み始めた風呂敷に、思わぬものが入っていた。
よいでしょう。このまま包み込むことにいたしましょう。
思ったこと:
思うところはたくさんあって、キリがありません。
自分が死んでも、他の人は生きている。
宇宙の果てにはきっと人類以外にも実存を持った生命がいて、
だから地球人が全滅しても、やっぱりまだ誰かがいる。
いつまで同じことが繰り返されるのでしょう?
私が死んでも意味がないじゃないですか。
生まれ変わり、というのは、多分ないと思うのですが、
私が死んでも、やっぱり、いくらでも誰かがいて、
いくらでも誰かが生まれてくる。
その意味で、結局、ずーっと、私が居続ける。
同じことが繰り返される。
「せめて自分だけでも楽になりたい」だなんて、
もしかするとそんなことは原理的にありえないのですか?
この身がなくなれば、この身における私はいなくなるのでしょう。
でも私自身はきっといなくならない。
もちろん私にはあなたの記憶はないし、あなたにも私の記憶はないはずですが、
それは単に記憶というものがそういう性質のものというだけのことであって、
この身における私と、その身における私、というだけのことなのです。多分。
この身が滅ぶことによって死ぬのは誰か?
社会的には何某という人物が死んだことになるのでしょう。
しかしそれは社会的には、ということでしかありません。
実際のところ、誰が死ぬのでしょう?
きっと実際のところは何も変化がない。
だって相変わらず巷には人が溢れていて、地球には人が溢れていて、
宇宙の果てには実存があふれているのです。
ああ、やっぱり同じことだ。
どこかに突破口がないものでしょうか。
◆ 2012/02/07
したこと:
五目並べの件:
棋譜をDBで管理する機能。
盤面の形状も棋譜と一緒に保存・再生するようにした。
盤の星(一部の交点が黒い点で強調されているアレ)の位置も保存する仕組みが、
単に見た目の問題で本質的じゃないわりに、処理が複雑になってしまって、
やめようかなーって途中で何度も思いながら、
結局できたことはできたのですが、ソースが汚くなってしまって、
後で何かあったときに、読み返すの大変そうだなって、
なので、考え方によっては、こういう部分は思い切って、
なしにしてしまうのも、ありなのかもって、
だから、その、えっと……好きです!
ちがう。まちがえた。
これで一応、予定していた機能はそろったので、
あとは風呂敷を畳む方向。
反映されていないルールを反映するようにして、
ボタンの位置とかが適当なのでキレイ目に整えて、
思考処理さんともうちょっと親睦を深めて。
さっさと片付けよう。
思ったこと:
ムズカシイ理屈は、いじくり甲斐もツッコミ甲斐もあって、
たくさんの人がいじくったりツッコんだりして、
結果として、おおいに盛り上がっている、
というだけのことであって、
真実の教え? は、これといって付け足すことも差し引くこともないほど自明なので、
特に盛り上がることもなく、結果として、あまり知れ渡っていない、
ということだったりして?
それを聞くと恐ろしさのあまり死んでしまう怪談?
それを知るとどうでもよくなって即座に自殺できてしまう智慧?
◆ 2012/02/06
したこと:
五目並べの件:
棋譜をDBで管理する機能。
大体、一通りの処理が通るようになりました。
対戦後に「保存」して、「読み込み」でリストを表示して、
選択して「取得」で棋譜を取り込む。
削除機能と、オマケでコメントを書き足せるようにもしてみました。
SELECTと、INSERTと、UPDATEと、DELETEを網羅したぞ。惚れ惚れせよ。
あと、何か決定的に足りないものがあったような。
盤面の形状を変化させていた場合、対応できてないのでした。
保存するデータの中に盤面の形状も入れるようにしなければ。
もう肩こってきました。誰か代わりにやっておくれー。
思ったこと:
言葉を大事にしたい。
しかしこれも執着心なのでしょうか?
◆ 2012/02/02
したこと:
五目並べの件:
棋譜をDBで管理する機能。
先に UI を整える。仏を作ってから魂を入れる。
リストビューコントロールと仲良しになるのが大変。
仕様のクセが読めなくて、便利なのか不便なのかよくわかりません。
CreateWindowExの段階で拡張スタイルを指定しても無視されるだなんて、
ずいぶん楽しませてくれます。
一応、表面上はそれっぽくなったので、
あとは中身を入れながら機能を整えていきましょう。
思ったこと:
オープンソース。
ソースが公開されててカスタマイズが自由だと、
コンフィグ機能が必要ないということだったりするのでしょうか?
ツールとしてのソフトであれば、
自分が使いやすいように改造できた方がいいじゃん、という話も
もっともな主張なような気がしてきました。
ゲームソフトの場合はどうなのでしょう?
ゲームソフトも、ゲームをするためのツール、と考えれば、
たとえば、ゲームの本質とは無関係(と自分には思える)仕様のせいで、思うようにプレイできない、
というとき、自分好みに修正できると快適、みたいな?
どうせコンティニュー無制限なんだし、
残機がなくなったときにゲームオーバー画面が出るなんて、
テンポ悪くしてるだけじゃん、修正してやる!
なんてことも可能だったり?
しかしそれが可能になると、歯止めがきかなくなる、節操がなくなってしまいません?
開始早々レベル99にするぜー、うおー。
ゲームソフトも、ゲームをするためのツール、であるはずなのですが、
「ソフトウェア」として焼き固められてそこにある、ということが、
「こういうゲームなのですよ」という説得力になっているというか、
ルールを好きなように変更していいということに気付いてしまったら、
ゲームに感じていた価値が相対化されてしまうというか、
あれ? レベルって単なるデータだったのかー。なーんだ。あっはっは。空笑い。
> 開始早々レベル99にするぜー、うおー。
それをやりたい人はやればよいと思いますよー、ということでしょうか。
なんだか風情がないですねぇ。殺伐。
オープンソースであることが、ユーザーにもたらす利便性、
というのと同じ要領で、
プレイヤーに対する利便性、というふうに考えてしまうと、
ソフトの目的が「ゲーム」である場合は、話はそんなに単純じゃないみたいです。
でもゲームオーバー画面はテンポ悪いと思うですー。修正したいよー。がおー。
◆ 2012/01/29
したこと:
五目並べの件:
・盤の形状を ファイルを読み込んで設定できるようにしました。
・試合後に棋譜を再生できるようにしました。
これで完成と言えば完成なような気がしてきました。なんだか普通に遊べます。
風呂敷を畳む方向で細部を整理していけば穏やかに収束しそうです。
もう少し風呂敷を広げます。
棋譜をDBで管理する機能をつけましょう。
思ったこと:
全てを失う日は必ず来る。
◆ 2012/01/28
したこと:
五目並べの件:
UI を整える作業。
まだ、全体的にどういう仕様にするか明確に決まってなくて、
何の作業をすればいいのか、意志が定まらない状態なので、
先に UI を固めてしまうことによって、それに合わせた中身を作るぞ、と
仕様と意志を定める目論見。
試合開始前にルールを設定するパネルを整えました。
コンボボックスやチェックボックスを配置して、ウィンドウズのソフトっぽくなりました。
実際のゲーム進行に反映させる処理は後回し。
思考処理さんが賢く対応してくれるかどうかが懸念事項ですが、今は考えません。
次はどこに手を入れましょう?
最初の方針からすると、ファイル読み込み機能を入れる必要があるのですよね?
なんとなくメニューバーの「ファイル → 開く」を押すと、
おなじみのダイアログが開くようには既にしてあるのですが、
この機能を何に使いましょう?
思ったこと:
死ねてません。
結局、踏み切れません。
しかし考えてみると、自分の意志で死ぬことは原理的にありえないような気もしてきました。
たとえば体に刃物を刺すと死ぬ、という、知識があります。
知識です。
だから知識によって、自分の体に刃物を刺す、ということはあるかもしれません。
でも、それと、死ぬこととは、別の話なような気がします。
刃物を刺すと、どうなるのかというと、どうなのでしょう?
これもまた知識なのですが、刃物を刺すと、血が流れ出て、
血が少なくなると、酸素などが行き渡らなくなって、細胞の代謝が停止して、
というようなことでしょうか。
こうして考えてみると、やはり知識に過ぎないのですね。
「細胞の代謝が停止して」まで辿ってみましたが、
その先、どこまで行けば「死」が出てくるのでしょう。
勉強をすればきっと、もっと詳しい知識は得られるのでしょうけれど、
しかしそれはどこまでいっても他人の死でしかなさそうに思います。
他人ではなくこの私が死ぬとはどういうことなのか?
今、こうしてここで、見たり聞いたり感じたり思ったりしている、この私、が、死ぬ、
それは一体どういうことなのか?
それはもう、体に刃物を刺したら死ぬ、というような大雑把な知識からは程遠い話で、
仮にその結果として何らかの事象が起きてきたとしても、
すでにそれは私の意志によるものではない。
自分の意志で死ぬことはできない。
そう言えば生きているということも自分の意志によるものではないのですね。
歯の詰め物が取れたので、歯医者さんに行ってきました。
定期健診に通っているので、普通の意味での虫歯はないはずですが、
こうなっては結局、取れた部分の歯を削って詰めなおしです。
こうして確実に歯が少なくなっていくのですね。
歯冠修復及び欠損補綴。
まさに身を削られてしまったわけです。また一歩、死に近づいた思いがいたします。
「8020運動」というものがあるそうですね。
80歳になっても自分の歯が20本以上残っている状態を目指そう、という目標。
年をとって死ぬのが先か、歯がなくなるのか先か。逃げ切り競争。
死ねば歯のことを心配する必要はないわけです。
削るときは麻酔をするので、おかげさまで痛くはなかったのですが、
仮詰めを取って、型取りした詰め物を入れるとき、それなりに痛かったです。
これが生きるということですか。
無力感で一杯になります。
自分の意志ではどうにもなりません。
全身を投げ出してお任せするしかありません。南無阿弥陀仏。
おおよそ因果の道理歴然として私なし。
しかし痛いのは誰か? 私です。
この差をどう理解すればいいのでしょう?
ああ、そうか。理解を超えているのですね。不条理。量り知れない宇宙のことわり。
痛みを感じるとき。
私がいる、ということに気が付く瞬間。
なるほど、私とは痛みのことですか。
死ぬのは構わないけど痛いのは嫌。ホスピス。緩和ケア。
死ぬまでに後何回、歯医者さんのお世話になるのでしょう?
今この口の中に、詰め物でフタをされた神経がある。
生きているということは、体内に爆弾を抱えているようなものですね。
というより、この体が爆弾そのものでしょうか。
体があるから痛い。
生きるとは痛いということ。
◆ 2012/01/26
したこと:
五目並べの件:
思考処理が重いのをどうにかする試み。
見込みがあるのかないのか、判然としない中を手探りで進めていく作業。
まずはどこが重いのかを洗い出す。
部分的にコメントアウトしながら試してみる。
そうは言っても現時点では基本的な処理しか書いてなくて、
どこが重いのかは見当がつきます。
どうやら五目並んでいるかどうかを判定する処理が重いようでした。
予想の範囲内ではありますが、これはゲームのルールを判定する箇所であって、
思考処理そのものとは少し違うので、意外と言えば意外な感じ。
五目並んでいるかどうか。
単に判定するだけならどうにでもなるのですが、
深読み中に発生する大量の局面それぞれに対して処理を走らせるとなると、
どうにでもしているわけにはいかないのですね。
効率のいい、うまい判定方法が、何かないものか、
ありそうな気がして、考えてみて、いくつか思いついて、試してみたのですが、
あんまりうまくいきません。
普通にXYを縦横斜めにぐるぐるして、つながってる? つながってない?
という素朴な判定方法を、超えられません。
たとえば盤面を列ごとに文字列にして、パターンマッチ、
というのを試してみたのですが、文字列は重いですね。死ぬかと思いました。
文字列は重いので、数値にしてみる。
盤面は 15×15なので、一列を15桁の数字で表して、ごにょごにょする。
これはうまくいくと思いました。
だって数値ですもの。PCさんの得意分野ですもの。きっとやってくれると期待しました。
でも、これも文字列のときと同じぐらいの重さでした。多少マシですらない。
15桁の数値、というのがダメっぽい感じです。
何桁目の数字はいくつ? などを求めるために、÷10や×10を繰り返す、
というような処理を何度もするのですが、
÷10や×10 が、なんとも、重いようなのです。
2進数だったらシフト演算とやらですっきり解決するところなのでしょうか。
PCさんといえども10進数はあんまり得意じゃない? 無理させてしまってごめんよ。
そんなこんなで肝心の部分では成果が出なかったのですが、
盤面の列ごとに、あらかじめ分割して覚えておく、
というやり方はそれなりによかったようで、
つまり「普通にXYを縦横斜めにぐるぐるして、つながってる? つながってない?」
の「ぐるぐる」の部分だけ、軽くできたみたいです。
4手読みで、以前は毎回2分ぐらい考えていたのが、
長くても10秒ぐらいに縮まりました。
でもこういうのってマシンの性能に依存しやすい部分だったりするのでしょうか?
今使ってる最新鋭のハイテクPCじゃなく、隣でお休み中のご隠居PCだったら、
やっぱり何分も考え込んでしまうのでしょうか。怖くて試せません。
実際は4手も読まなくても「止まってない4は致命的」などのお約束を使うようにすれば、
そんなにおかしなことにはならないのですが、少々不本意。
ルールを動的に変えたいので、それだと応用が利かない予感。
五目並んでいるかどうか。
なんかうまい判定方法があるような気がして、ついつい意識を持っていかれてしまいます。
しかし考えててもキリがないので、そろそろ、UIとか、他の部分を片付けてしまいましょう。
今思いついたんですが、
「つながってる?」と訊かれるたびに判定するのではなく、
着手した時点で、その地点を中心に判定して、覚えておけばいい?
「この局面には何色のn目がA箇所ある」というデータが欲しいので、
着手地点を中心に、前回の局面との差分を計算して覚えておく。
どうなんでしょう。同じことですか?
ここでいう着手というのは実際の盤面ではなく深読み用の内部表現に対して、
ということなので、「この局面のこの地点に打った局面を生成」というタイミングのことで、
そのたびに判定処理が走るのだから、回数は同じ?
着手地点だけを中心に判定すればいい、というのが主張点でしょうか。
何もできているわけがない空白地帯を、自動的に無視することができる。
なるほど。
しかしあらかじめ判定して覚えておく、となると、
あらかじめ、何を尋ねられるかを、想定してしまうことになりますよね。
黒4目の数、とか。片側が止められている白3目の数、とか。
ルールを動的に変えられなくなってしまう懸念。
ユーザーの気まぐれで「飛びが3箇所ある8目」を判定する必要に迫られたらどうするの?
いや、だから、ついつい意識を持っていかれてしまうのですが、
さしあたって実用的なレベルにはなってるわけですから、
そろそろ、UIとか、他の部分を片付けてしまいましょうよ。
さっさと終わらせましょう。
思ったこと:
オープンソースってどうなのでしょう。
よく聞く言葉ですけれども、どういう価値があるのか、よくはわかりません。
ソースを公開するという、えっと、何でしょう? 男気? 拙者逃げも隠れもいたしませぬ。
たとえば Firefox がオープンソースということで、
どうなんでしょう? ソースを入手して、自分なりにカスタマイズして、
俺用Firefox! 愛羅武勇! なんてやってる猛者が僕らの街にもいらっしゃるのでしょうか。
本当にソースが手に入るのか半信半疑で検索してみたのですが、
本当に手に入るのですね。
ためしにダウンロードしてみました。
しかし、中身を見ても何が何だかわかりません。
考えてみたら、これが本物なのかどうかすら自分には判断できないではありませんか。
そうはいっても「オープンソース」というからには、ウソということはないでしょう。
そういえば Linuxの方では「ソースコードからビルド」というのも珍しくはないですね。
自分はあんまりやったことありませんが、もともとあっち方面の文化なのでしょうか。
オープンソースだから、世界中の人が開発に参加していて?
だからバグがすぐに修正される? みたいな話も聞いたことがあるような気がします。
世界中の人って誰のことでしょう?
少なくとも私のような素人は蚊帳の外ですよね。
あのソースコードを見て「バグ発見! 修正してやるぜ!」と活躍しているお方が、
意外と身近なところにいたり? して? 本当かな。
それで修正したとしますよね。それをどうすればいいのでしょう?
みんなが好き勝手に修正したとして、バージョンをどうやって統合するのでしょう?
それ以前に「バグを修正」といっても、「どうだったら正しい動きなのか?」というのは、
本来の仕様を知っている人間にしか判断できないですよね。
「本来の仕様」を決めているのは誰なのでしょう?
「修正版」なるものが誰かの手によって作成されたとして、
それが仕様を満たしたものになっているかどうかを確認するのは誰なのでしょう?
わからないことばかりです。
なんだか根本的に勘違いしてそうで、申し訳ないです。
これを詳しい人に見られたら「キミねぇ、オープンソースってのはねぇ」と、
丁寧なお叱りを受けてしまいそうです。どうかお手柔らかにお願いします。
最近気になっているのは、
ゲームソフトをオープンソースにしたらどうなるのか? といったことです。
今日は眠いので、また今度考えます。
◆ 2012/01/24
したこと:
五目並べ:
なんとなく動くようにはなりました。
「3ができたら必ず止める」などのお約束は教えてないのですが、
4手読みをすることで必然的に対応してくれています。頭なでなで。
Flashのときと違ってマルチスレッドが使えるので、
処理の流れとしては、素直な書き方ができています。
しかし処理が重い!
中盤以降、一手に2分ぐらいかかってしまっています。
処理速度については C++だから大丈夫だろう、と甘くみていました。
C++といえども STLやクラスを使ったお上品な作り方をしていては、
速度は望めないということでしょうか。
C言語流のカリカリな書き方をすれば速くなる? 伝統芸能。
プレイング:
「iSwitch! plused」コンプリート。コメントを書かなければ。
「TanTanTanTan」結局ステージ69は飛ばして、現在ステージ92。
こういうゲームはステージを大量に作るのが大変そうです。頭が下がります。
思ったこと:
ゲームは宗教だから、それをメシの種にしようとすると、
おかしなことになってくるのではないか、と、ふと思いました。
よりよい生を全うすること、命に誠実であること、
そのための有効な、祈りと実践の形式の一つ。
> メシの種
修行僧が托鉢をする様子を思い描いてみる。
それによって僧は修行に専念することができ、
在家の人々は彼らに施しをすることで自分も功徳を積むことができる。
> ゲーム
よく言われることですが、「ゲーム」と「ゲームソフト」の違い。
「ゲームの作り方」と言ってプログラミングの講座だったりするのは、
それは「ゲームソフト」の作り方なのだ、ということでしたね(おさらい)。
これもどうやら、「ゲーム」と「メシの種」に関係に絡んでいて、
つまり技術的な部分「プログラマー」とか「グラフィッカー」とか、
それは技術屋さん、だから、技術を売って、メシの種とすることができる。
それは技術であってゲームそのものではない。
→ ここでは「ゲーム」との対比で「技術」と言っているのであって、
それぞれの専門分野には奥の深い世界があることでしょう。みんなすごい! 拍手! かしわで!
立派なお寺を建てるためにはさまざまな技術者が必要で、
そのためには多くの信者や有力者からの寄進が必要です。
立派なお寺や大仏があると、ありがたい。わかりやすい。
思わず手を合わせたくなってしまう。
しかし立派なお寺がなくても信仰はできます。
ゲームでお金を得られるようにすることは、
より快適にゲーム活動に打ち込むために、好ましいことに違いないのですが、
かといって、お金を儲けるためのビジネスや、
利益を出さなければ首を吊らなければならないような生業として、それを行うようになると、
何か、違うような気がしていたというか、
「会社である以上、まずは売れなきゃしょうがないから…」
などと言うたびに、ゲームではない何かに変化してしまっている矛盾を感じていたのですが、
上記のように考えると、何がどうおかしいのか、事態を明確に俯瞰することができた気がします。
祈りと実践の形式ですか。なるほどです。
> 立派なお寺を建てるためには
あるいはその行為自体が信仰の実践ということでしょうか。
なんだかゲームを作っている方々がとても尊く思えてきました。
まさに菩薩。
インストールしたくないなんて言わずに、祈らせていただかなければ。
◆ 2012/01/20
したこと:
したこと。
何してたんでしょう? なんだかよくわかりません。誰か教えてください。
えーっとえーっと。
なんだか知らないけど、手元にある技術を適当にまとめて、
何か一本ソフトを作ることになってしまって、
C++で五目並べのソフトを作ることになったのでした。
条件としては、DirectXを使わないこと。
ボタンやメニューバーなどのコモンコントロールを豊富に散りばめて、
見るからに「ああ、Windowsのソフトなのね」という感じにすること。
ファイル読み込み機能をつけること。
よくメニューバーの左端に「ファイル(F)」という項目があるじゃないですか、
で、「開く(O)」を選択するとおなじみのダイアログが出るじゃないですか、
あの、おなじみ感。
つまりデモンストレーションなのです。
ゲームを作るつもりはなくて、でも、それなりに、ひとまとまりのアプリケーション、
という感じが欲しいので、無難なところで五目並べ。
ゲームは作りません。
「おはなし+ゲーム」が片付くまでは、ゲーム、というものは、作ってはいけないのです。自主規制。
デモンストレーション。
なんでこんなことすることになったのでしょう???
自分がどっちに向かっているのか、全然わかりません。
いや、今まではわかってたの?
なるほど。じゃあ別に、同じことなのかな。
まず当面の目標として、メガネを買い替えたい。
少し前にフレームが壊れて、100円ショップで買ってきたサングラスのフレームに
レンズを無理矢理はめてごまかしているのですが、どうも焦点が合ってないっぽい。
早く買い換えないと目に悪い気がします。
おはなし+ゲーム:
思いつき次第、メモを残すようにはしているのですが、
明確な進展はナシ。
ああ、そうだった。
こっちを片付けないと、一歩も前に進めないのでした。
どっちに向かっているにしても、これを片付けないことには。
思ったこと:
ゲームの話。
難しさについて。
乗り越えることができたときの感覚、できなかったときの感覚、という観点で。
>
> ・「一体どうやってクリアすればいいんだ?」と頭を悩ませる難しさ
>
最近「TanTanTanTan」というゲームをやっているのですが、
http://pollux.la.coocan.jp/
ステージ69で詰まっています。
まさにこの「一体どうやってクリアすればいいんだ?」という状態です。
もしかしてステージのデータが間違っているのではないか?
という疑念が沸き起こってくるほどです。
短手数の詰将棋が解けないときも、この感覚になるように思います。
長手数の場合、単に頭がパンクするだけ。
「うーん、おいらには無理。頭がよければ解けるんだろうなぁ」
しかし短手数となると、それとは別の感覚になります。
選択肢は全て見えているつもり。しかし正解手順が見つからない。
「これ、問題図が間違ってるんじゃないの???」
つまりこれが、この難しさを、乗り越えることができなかったときの感覚、
ということでしょうか。
しかし、パッと見た感じ、複雑そうには見えない、何とかなるような、気がする。
その「なんとかなるような気がする」
というのが、解けないにも関わらず、取り組みを続ける動機?
または、問題が間違っているようにさえ見えるほどなのに、
一体どんな解法があるのだろう? 不思議!
という好奇心も、ゲームに向き合う動機になっているかもしれません。
詰将棋の場合、本の後ろのページに正解が載っています。
自力で解くのを諦めて正解を見てしまったときの感想は、自分の場合、2種類あります。
・なるほど!
・あぁ、そう…
感想が両極端に分かれるわけですが、その分岐点がどこにあるのかはよくわかりません。
「そんな解き方があったのか!」と驚くこともあれば、
「確かにその通りですねぇ、としか言いようがないなぁ…」と、白けてしまうこともあります。
自分の場合、詰将棋に関しては、どちらかと言えば後者になることの方が多い気がします。
将棋そのものに対して、あまり新鮮味を感じていないせいだと思います。
本によっては正解ページにもっともらしい解説文が書いてあって、それに対する反抗心、
というのもあるかもしれません。
個人制作のパズルゲームなどでは、
自分は前者の感想を抱きやすいような気がします。
そのゲームそのものに対する新鮮味がそう感じさせるのでしょうか。
「このルールには、こういう解釈もあるのか、なるほど!」
> 自力で解くのを諦めて正解を見てしまったときの感想
それに対して、自力で正解を思いつくことができたときは?
つまり、乗り越えることができたときの感覚。
自力で正解を思いつくことができたとしても、根本的には同じなような気がします。
「自力で思いついた」というその一点については、
その結果を誇ってもいい、という、自分に対する言い訳が成立してしまって、
油断すると全てが自分のものになったような錯覚を起こすのですが、
しかし、特に短手数のパズルの場合、「思いつき」による部分が大きく、
「なぜ思いついたのか?」は、自分でもよくわかりません。
それは後ろのページの正解を見るのと一体何が違うのか?
ところで詰将棋でもそうですが、上記「TanTanTanTan」や「iSwitch!」のようなゲームで、
ステージによっては、選択肢がほとんどなく、普通にプレイしているだけで
自然にクリアまで導かれてしまうことがあります。
これは「難しさ」の話とは無関係かもしれませんが、
「キレイなステージ」と感じることがあります。
鑑賞。
そのような解法およびそれを成立させるルールを考案した作者の作品を鑑賞。
> なぜ思いついたのか?
思いつくまでに至るプロセス。
「思いつきゲー」と名づけてみる。
そのプロセスは、多分、作者であっても、計算して制御することはできない気がします。
だとすると、「思いつく・思いつかない」「思いつくまでかじりつく」
といったプレイヤーの取り組みは、全てプレイヤー自身のもの?
ゲーム体験。誰のものでもなく、他ならぬ、この自分自身の。
自分が、いる、ということに、気が付く瞬間?
なにしろ自分以外は全て他人なので、世界には他人しかいないと錯覚しがち。
>
> ・「これは練習が必要だぞ」という難しさ
>
何をすればいいのかはわかっている、ということです。
いや、違いますね。
何をすればいいのか、というより、どうなればいいのか、と言った方が正確でしょうか。
現時点ではこれを乗り越えることができずにいるとしても、
どうなれば乗り越えることができるのか、という姿は想像することができる。
そのためにどうすればいいのかは、わかっている?
ああ、そうか。「練習が必要だぞ」なのでした。
「うまい人はクリアできるんだろうなぁ」
と、
「自分も頑張ってうまくなろう」
の、
距離は、どのぐらいか?
目の前に、うまければクリアできるのだろう、と思えるもの(ゲームまたはステージ)があって、
そこで、取り組むのをやめてしまう気持ち。
「ドリスゲーム」の経験を思い出してみると、
別に、自分の意志が強かったから、努力を継続してクリアできた、というよりは、
リプレイが手軽になっていて、続けて何度も繰り返せるような仕組みになっていたから、
そのように導かれた、という側面が大きかったように思います。
しかし途中で何度も、もうやめてしまおうと思ったし、
やめてしまう人の気持ちも理解できます。
むしろ、あんなの、やめる方が当然とさえ思います。
自分も「ドリスゲーム」以外に過去にプレイしたゲームで、やめてしまったものもいくらでもあります。
やめてしまう気持ち。
続けてしまう気持ち。
自分の場合は、プライド、のような気がします。
もう、それをクリアしておかないと、一歩も前に進めなくなってしまう。
どうしてもやめるなら、何が言い訳が必要になる。
「マゾすぎる」とか「バランスがおかしい」とか「作者は勘違いしている」とか。
心のバランスを保つために、ゲームの方を攻撃しておかないと、その場所から離れられない。
あるいは、そこまで、のめり込んでしまったのは、なぜなのか?
> ゲームの方を攻撃しておかないと、そこから離れられない。
そこまで激しくならなくても、
単に、何度やっても進展がないことで、飽きて、いつの間にかやらなくなる、
というのもありそうです。
むしろその方が自然なような気もしてきました。
その場合、「難しすぎたからプレイしてもらえなかった」という言い方になるのでしょうか。
その考え方でいくと、
さほど苦労しなくても進展が得られる → 進展が得られているうちはプレイが続く
さて、その次が分かれ道。
そのまま「最後まで気持ちよくプレイできました」となるか、
それとも、途中で壁にぶつかるか。
途中で壁にぶつかった場合、それを乗り越える意欲が起きるかどうか?
「ここまで続けてきたのだから」という思いは、意欲の源泉の一つにはなるかもしれません。
いや、それが逆に「ここまで続けてきたのに」という不満に変化する?
そうなってくると、
「途中までは面白かったんだけど、終盤がマゾすぎて…」という感じの感想になるのでしょうか。
「練習が必要だぞ」の話からは離れてきてしまいました。
> ゲームの方を攻撃しておかないと、そこから離れられない。
または、他人から「どうしてそこでやめたのか?」という主旨の質問があったときの、
つじつまの合う回答、という程度のことかもしれません。
「なぜやめたのか、わかりません」などと、本当のことを答えると、会話が成立しません。
日常会話とは、真実を追究する場ではないのです。
>
> ・慎重な操作が要求される難しさ
>
何をすればいいのかはわかっている、というのは、むしろ、こちらのようですね。
わかっているのに、うまくいかない。イライラ棒。
これも練習が必要と言えばその通りなのですが、
求められている行動が、あまりにもわかりきっているケース。
練習を積んで技術を身につけるというよりは、そのときの精神状態に依存するような。
落ち着いてやれば、できるに決まっている。
実際にどうなのかは別として、そのように思える。
どちらかと言うと、失敗したときの不快感の方が、
成功したときのよろこびよりも大きいような気がします。
見るからに、できるに決まっていることが、できない。
慎重にやればできるに決まっている。単に油断しただけ。
今の自分に、これをクリアする能力が、ないわけではない。
だからこれは、
ない能力を、練習によって、新たに身につける、という取り組みではない。
すでにある能力を、引き出すことができるかどうか。
だからこそ、どんなに能力があったとしても、
成功するかどうかは、やってみるまでわからない。
正解がわかっていれば確実に解くことができるタイプのゲームとの決定的な違い。
正解はすでにわかっている。
わかっているのに! うおををを! あれ? エスケープキーどこいった?
> どちらかと言うと、失敗したときの不快感の方が、
> 成功したときのよろこびよりも大きいような気がします。
これはどうなのでしょう?
「ドリスゲーム」をクリアしたときの脳内麻薬体験を思い出してみると、
そうとも言えないような気がしてきました。
現在プレイ中の「iSwitch! plused」でも、そういった体験がありました。
どうすればクリアできるのかはわかりきっていて、
何度でも失敗を繰り返して、挙句にクリアできたときの、全身が震える感覚。
昔、卓球部に所属していたことがあるのですが、
卓球をしているときにも、同じような感覚があったような気がしてきました。
高速で球を打ち合って、集中力が極限まで高まって、
指先の微妙な感覚。
この角度で本当に打ち返せる?
自分の感覚を信じて腕を振り抜くしかない。
それでも相手は打ち返してくる。
どこへ来る? 間に合う?
手首に伝わってくる衝撃。間に合った。なぜ?
考える意識など置き去りにして、台上で繰り広げられる事態は互いの身体を疾走させる。
卓球の試合をテレビで観ると、点が入ったとき、選手が「ヨシッ!」とか吼えてますよね。
そりゃあ、吼えるに決まってるんですよ。
それだけ遠いところに行っていたのです。
◆ 2012/01/12
したこと:
とある事情で、以前に書いたプログラムを整理していたら
C++でウィンドウを表示したりボタンをつけたりするライブラリのようなものが出てきたので、
少し整備して公開してみようかどうしようか、と思いました。
しかし、もともと自分用に作ったものだったので低機能かつ適当な仕様で、
人様に向けて公開するとなると、手入れが面倒なような気もします。
せっかくなので再利用できるように少し整備しよう、
やったー、ステータスバーがついたぞー、
とかなんとか、何か意味のあることをしている気分になるだけで、ほとんど現実逃避。
してないこと:
おはなし+ゲーム:
現時点では作業をするというよりは考えることがメインなので、
何か別のことをしながらでも平行して進めることができるだろう、
という考えが、非常に甘いのですね。
なーんにも進んでません。それ見たことか。
この件から意識をそらさないように。
たとえば、この件に意識を向けるためのフレーズをその都度用意しておくとか。
現在考えるべきシーンに関する印象的な会話とかを心の中でつぶやく。ナムアミダブツ。
思ったこと:
ゲームの話。
「難しさ」について。
一言で「難しさ」と言っても、その内実はさまざまだと思います。
・「一体どうやってクリアすればいいんだ?」と頭を悩ませる難しさ
・「これは練習が必要だぞ」という難しさ
・慎重な操作が要求される難しさ
他にもありそうです。
そして、これらのそれぞれについて、
乗り越えることができたときの感覚、できなかったときの感覚が、異なっているはず。
眠いので明日考えるー。
◆ 2012/01/10
したこと:
おはなし+ゲーム:
やっと具体的なことが思い浮かびました。
なんとかエピソードとして形になりそうです。
しかし、どうやって思いついたのか、というのは全くわかりません。
できるだけこの件から意識をそらさないように保っているうちに、たまたま、
としか言いようがありません。
コツがあるとしたら「できるだけこの件から意識をそらさないように」
という一点だけでしょうか。神頼み。
観念的なレベルで「ここはどうあるべきか」というようなことは、
自分の胸に訊いてみれば、少なくとも、考えるための取っ掛かりはいくらでもあるのですが、
エピソードとするためには具体的なものが必要です。必要ですよね??
具体的なものが必要なのは、この箇所だけではなく、この先もたくさんあります。
こんな調子で続けていくしかないのでしょうか。
こういうのを何と言うのでしたっけ。
「先が思いやられる」
そうです。それです。
他のみなさんはどのようにしているのでしょう。
思ったこと:
ゲームの話。
一人の天才がすごいゲームを作ることではなく、
(それをキッカケとして)同じようなモノがたくさん作られるようになること、
が、「市場が活性化する」ということなような気が、少ししてきました。
個人制作ゲームの場合に「市場」という言葉を使うのは
若干、違和感があるのですが、他に適切な言葉が、あったらいいな。
> 一人の天才がすごいゲームを作る
企業が営利目的で制作するものであれば、
ヒット作の後追いというのは珍しくないと思うのですが、
個人制作の場合、その個人の作品、という色合いが前面に出やすく、
追随する側としては肩身が狭いかもしれません。
> 同じようなモノがたくさん作られるようになる
「"面白いゲーム" というのは こういうもののことだ」
という、共有されたイメージ。
共有のされ方。
より広く、より深く共有されていること、が、
「市場が熱い」ということでしょうか。
つまり「よーし、そんなら俺もいっちょ何か作ってやるべ!」
と、人を駆り立てるような熱気。
> 一人の天才がすごいゲームを作ることではなく
一人の天才がすごいゲームを作って人々から絶賛される中で、
「実はこんなライブラリを使ってるんだ。
これを使えば誰でも簡単にすごいゲームが作れるってワケさ。
今ならなんと、驚きの¥○○○○でご提供!」
なんだかつまらない話になってきました。
◆ 2012/01/06
したこと:
ゲームリンク館:
外部ニュースのこと。
今のところ、なんだかんだと毎日ニュースのネタがあります。
寄生コーナーのうちとしては、ありがたい限りです。
みんながんばれー。フレーフレー。
おいらはなまけるよー。ぐだーぐだー。
おはなし+ゲーム:
エピソードとするための具体的なものが思い浮かびません。
観念だけがあって、肉体がありません。
具体的なもの。
どうすれば思いつくのでしょう。
考えるにしても、考えるためのとっかかりがありません。うなぎ。
かろうじて断片的な会話がいくつか思い浮かぶのみ。
あなたたちは一体何をしているの?
思ったこと:
せっかく、すごく嫌な気分になったのに、
別のことをやり始めたら、すっかり気分が変わってしまいました。
あの嫌な気分の中で、考えるべきことがたくさんあったのに、
もう何も思い浮かびません。
ここはどこなのでしょう? パラレルワールド?
◆ 2012/01/04
したこと:
心惑う闘技場のzip形式版を公開しました。
理由は、自己解凍形式の「exe」が、まるで「インストーラー」のようで、
前々から、少々大げさなような気がしていたからです。
個人制作のゲームで、「インストール」って、気が重くないです?
プレイ前に「え、インストールしなきゃいけないの? じゃあ、やめとこう…」みたいな。
そういうこと思ったことないです?
ありますよね? あると言ってください。
もともと製作中にはzipで公開する心づもりでいたのですが、
実際にzipにしてみると思ったよりも容量が小さくならず、
あんまり容量が大きいとダウンロードの途中で諦められてしまうかも、と心配して、
圧縮率の高い方法を探した結果、現在の自己解凍形式にたどり着いたのです。
(DGCAの作者様、ありがとうございます! 圧縮率の高さには感動しました)
それで、その自己解凍形式の「exe」とzip版とを並べて公開して、
「好きな方をどうぞ」ということにしようかとも思ったのですが、(現在の形)
ダウンロードするときに選択肢が多いと、混乱されてしまうような気もして、
結局、当時は、zip版の公開を差し控えたのでした。
しかし今となっては、混乱されるならされるで、別にいいか、という心境なので、
このたび、zip版の公開に踏み切った次第です。
理由はもう一つあって、
とあるゲーム作者さんのサイトで、作品がインストーラーつきでしか公開されていなくて、
冒頭で述べたようにインストーラーだと抵抗があったので、
ダメもとで「インストーラーなし版を作って」とお願いしてみたところ、
こころよく作ってくださったので、
じゃあうちも、その対応に恥じないようにしよう、
という心温まるエピソードがあったのです。にゃーにゃー。
うちで使っている「exe」は、あくまでも「自己解凍形式」であって、
いわゆるインストーラーではないのですが、
なんか「インストーラー」って、怖くないです?
自分のマシンの目に見えないところを、どういじられてしまうかわからない、みたいな。
寝てる間に宇宙人にさらわれて、脳内に金属片を埋め込まれる、みたいな。
製作元を愛しているならいいですが、できれば「インストール」は避けたい気がしてしまいます。
なんと言うのでしょう?
たとえば、ちょっと電球を買っただけなのに、店員さんが家までついてきて、
自宅に上がり込んで電球の交換までしてくれてしまう、
というような、居心地の悪さを感じてしまいます。(店員さん、毎日靴下替えてます?)
……と、思うのですが、ネットで関連情報を見ている限りでは、
同じようなことを思っている、という声は聞こえてきません。
いろいろと検索をしてもみたのですが、
「インストール」または「インストーラー」というもの自体にマイナスイメージを持っている、
といった声は全く見つかりませんでした。
本当に「全く」見つかりませんでした。検索の仕方が悪かったんかな??? 不思議。
みなさん何も考えずに「次へ」を連打されてしまうんでしょうか? まぐろユーザー?
じゃあ今度からうちで製作するソフトは、
ウィルスを仕掛けるインストーラーつきで配布しちゃおっかなー。
それともパソコンのことを知り尽くしていて、
インストーラーの挙動も明確に理解できるから、そういった不安もないのでしょうか?
そう考えると、自分は、まぐろにもエキスパートにもなれず、
どっちつかずのところを煮え切らずにうろうろしている半端モノ、という感じもしてしまいます。
知識がないから、無駄におびえる。びくびく。
しかしウィルスとまでは言いませんが、
マシンの奥深くにどんなファイルを作られているかわからない、
という気持ち悪さは、やはり感じてしまいます。当然ながらレジストリも。
ネット上でインストーラーに対するマイナスイメージの声がみつからなかったわけですが、
そのわりに、アンインストールができなくなった、とか、
デスクトップに広告が表示されるようになってしまった、などの相談の声はそれなりにありました。
やっぱり知らないおじさんを家に入れちゃダメなのよ。
ツール系のソフトでは、「インストーラーつき」と「アーカイブ版(zip)」を
並べて公開されていることもしばしばありますので、
やはり、インストーラーを使うのは避けたい、という一定のニーズはあると思うのです。
個人制作のゲームは、少しプレイして捨ててしまうことも多いので、
「インストール」してしまうと手軽に削除できないという面倒さもあります。
もしかして、気軽に捨てられないために、わざとインストールさせている?? 策士ですね!
などと、疑っているわけではありませんが、
インストーラーつきだと、そもそもインストールする気になれないのでした。ごめんね。
あるいは「インストーラーがあった方が、ちゃんとしたソフトっぽく見えるかも?」
という目論見があったりして?
疑心暗鬼。うーんうーん。
それにしても、個人制作のゲームで、どうしてもインストーラーが必要なほど
複雑で大規模なソフトウェアって、ほとんどないと思うのですよ。
たいがいはナマのままで動く。
ゲーム本編を作るだけでも大変なはずなのに、
完成後にインストーラーまで用意するのってさらに大変ですよね。
わざわざ手間をかけてくれている。
純粋な親切心かもしれないのに、疑ってばかりでごめんなさい。心が汚い人間です。
最後にもう一度。
インストーラーなし版を公開してくれたMさん、ありがとうございました!
おはなし+ゲーム:
エピソードのネタ、を一つ確定させました。
確定というか、現段階ではこんなもんでいいか、ということにして、
次に進むことにしました。
この調子でどんどん進めてしまいたいところです。
思ったこと:
「心惑う闘技場」の値段の件。
レビュアー割引で50%、ということにしていますが、
本音を言うと、レビューを書いてくれるならタダでもいいっす。
しかしそれを公言してしまうと、もともとの「\3000」っていう数字は一体何なのだ、
実際のところいくらなのよ? ということになってしまうので、
5割引が限度かな、という判断です。
レビューを書いてくれるなら、むしろこっちがお金払ってもいいぐらいかも。
それは言いすぎか。
言いすぎというか、お金のやりとりはややこしいので「お金あげます」とは言いにくいです。
誰かおいらにコネがある人で、「レビュー書くよ」って言ってくれないかな。
全然知らない人だと、軽はずみにタダであげるのも、
無軌道にお金のやりとりが発生するのもまずい気がしますが、
知ってる人だったら、望むところです。
あ、レビュー代金は勘弁してください。タダで手を打っておくれー。ばぶー。
◆ 2012/01/03
したこと:
おはなし+ゲーム:
具体的なエピソードを考える作業。
「大体こんな感じのエピソードを」というのは
ある程度思いつかないこともないのですが、
果たしてそれがエピソードとして成立するのか?
実際に一つのエピソードとして書くことができるのか?
というところに確信が持てず、確かめるために中身まで作り込もうとして、
それで作業が全然はかどらない、というパターンに多分なっていることに気が付きました。
エピソードの中身を作り込むのは詳細設計パートの作業だったはず。
しかし実際にエピソードとして成立するのか・書けるのか、が、わからない、
というのは全くその通りで、どう考えればよいのでしょう?
「これぐらいネタを膨らませておけば、まとまった量のおはなしになりますよ」
という勘どころがわからないのだと思います。
経験がないので、わからないのは仕方がないところでしょうか。
どうしましょう。
今のままでは作業が進まないので、わからないなりに、
「大体こんな感じのエピソードを入れる予定」というぐらいの感覚で
思いつきを妨げずに列挙する方が作業しやすいような気がしてきました。
実際にエピソードとして書けるかどうかは次のパートで悩むことにしましょう。
今出来ることをしましょう。困ることは未来に先送り。
思ったこと:
> しかし親自身までもが、不条理を構成する一要素となってしまったというのは
> あまりにも悲しいことだと思うのです。
自分も誰かにとっての不条理になっているのかもしれません。
どう考えればいいのでしょう。
どう生きればいいのでしょう。
◆ 2012/01/02
したこと:
ゲームリンク館:
外部ニュースのこと。
今日も更新できました。明日もニュースあるかな?
みなさん、製作状況などをこまめに公開してくれるとうれしいな!
おはなし+ゲーム:
前回までで抽象的な要件は固まってきたので、
具体的なエピソードを考える作業に取り掛かりました。忘れないうちに。
さしあたって、テーマが一番深刻じゃなさそうな攻略対象3さんの分から着手。
しかし何も思い浮かびません。
結局「思い浮かぶかどうか」という頼りないエンジンをアテにするしかないのでしょうか?
「着手」とか「取り掛かった」とか言いながら、実際には何も出来ていません。
どういうふうに作業を進めればいいものなのでしょう。
要件から逆算すると必然的に案が出てきますか?
思ったこと:
「心惑う闘技場」イカすわぁ。
マップごとに手に入るスキルが違う、というのがうまいですね。
レベル要素がないと言いながら、スキルを習得するためには、
戦闘をこなして習得率をアップさせる必要があるのですが、
マップごとに手に入るスキルが違うので、いろいろなマップを移動することになります。
一箇所にこもって延々と同じ作業を繰り返すようなレベル上げにはならない。
普段行かない場所へ意図的に修行の旅をするのもいいですし、
普通にゲームを進めながらでも自然にいろいろなスキルが身につくことになります。
今日も自画大絶賛!
しかしセーブがやりにくいですね。
やりにくいというか、操作がわずらわしい。
こまめにセーブしながら進める前提なのに、いちいちセーブするのが面倒になってきます。
マウス操作だから、やり方はわかりやすいのですが、面倒くさい。
ショートカットキーが使えるようにするべきだったような気がします。
または「今使っているセーブデータ」に対してワンキーでセーブできるとか。
マウス操作だからわかりやすいけど面倒くさい、というのは全体的な課題ですね。
何か起きるたびにいちいちウィンドウが表示されて、
「OK」ボタンを押さされる、というのもどうかと思います。
道具を使ったときなどの、ちょっとしたメッセージのたびに、
そういった操作が発生するのはわずらわしいと感じます。
「OK」などはショートカットキーで押したくなります。
UIとしての統一がどうとかいう理念的なことではなく、プレイ中の実感として。
それ以前に、「ちょっとしたメッセージ」を表示するのは、
ログウィンドウのようなものを使った方がよかったような気がします。
戦闘中のログウィンドウと同じようなものを移動画面でも常駐させておいて。
というより、戦闘中・移動中の区別なく、同じログウィンドウを常駐させておけばいい?
でも、移動中にずっとログウィンドウが常駐しているのは邪魔なような気もしたのですよ。
あるいは、そんなにまともに文字を表示しなくても、
自キャラの頭の上にエフェクトとしてふわっと表示するぐらいでいいのかも。
「HP20up↑」とか。
> 移動中にずっとログウィンドウが常駐しているのは邪魔なような気もしたのですよ
そうでもない?
自キャラは基本的に常に画面の中央にいるので、
ログウィンドウが画面端にある限り、それほど邪魔ではないような気もしてきました。
以前プレイしたMMORPGで、いわゆるクリゲーなのですが、
画面内にいろいろなウィンドウが表示されていて、
それらが邪魔になって思うように敵をクリックできない、ということがありました。
しかし「心惑う闘技場」は画面内を頻繁にクリックするゲームではないので、
そういうのは気にしなくていいのかもしれません。
そのへんのレイアウト的なことでもいろいろ悩んだ記憶はありまして、
文字のサイズが妙に大きくて、小回りが利かないのですよね。
小さいサイズを指定すると、なんか、表示が崩れてしまって、
仕方がないので今の文字サイズで統一した記憶があります。
このへんは技術的な課題。
しかし仮に小さい文字を崩れずに表示できたとして、
文字が小さいと読みにくくなりません?
たまにネトゲをやると画面内にところ狭しとUIが並んでいて、
上手く並べてあるなーと感心する一方で、文字が小さくて目が疲れることがあります。
若い人はあれで問題なく読めるんかな。
おいらなんか「8」と「0」の区別がつかなかったりするですよ。えっへん。
うんうん。文字は小さいよりは大きい方がよいでしょう。
レイアウトの都合で文字を小さくしなきゃならないのだとしたら、
できればそれは文字のサイズではなくレイアウトや、それ以前のUI設計で解決したい気がします。
こういうのって、何かうまい考え方があるのでしょうか? 誰か教えて。
◆ 2012/01/01
したこと:
ゲームリンク館:
新コーナー「外部ニュース」を公開しましたよー。わーわー。パチパチパチ。
みなさまの活動を勝手に紹介しつつ、ウチのサイトの更新も兼ねてしまおうという
他力本願な寄生コーナーです。ニクイぞコノヤロー。
そんなわけで、現時点で把握しているニュースを単に全部載せてしまうよりは、
小出しにして毎日更新するようにした方がいいぞ、イヒヒ、
と、姑息なたくらみを抱いてほくそ笑んでいたのですが、
気が付いたら現時点で把握していた4件のニュースを全部載せてしまってました。うっかりさん!
さっそく明日は更新できない見込み。
というわけで、みなさん、ゲームを作りましょう!
明日の個人製作ゲーム界を盛り上げるのはキミだ!
わーわー。パチパチパチ。
ぐだぐだしたこと:
「心惑う闘技場」を値下げしようかなー、どうしようかなー、と、ぐだぐだしました。
現在は3000円としているのですが、1000円ぐらい?
ていうか、もう、タダでいいんじゃね? いやいや、早まりなさんな。
で、久々に本体を起動して自前プレイしてみたのですが、
なかなかいい感じじゃないですか。
もっとダサいゲームだと思ってましたが、思ったよりイケてます。
最初の村にチュートリアルのNPCがたくさんいて、わかりやすいですね。
唯一、逃げ方を教えてくれるNPCを配置しなかったのが心残り。
試用版のプレイ可能範囲が狭すぎるかな、と気になってたのですが、
その範囲内でも、スキルがいろいろ手に入りますね。
片手剣スキルと両手剣スキルと盾スキルが手に入るようになってます。
装備を切り替えて、スキルを使い分ける、
という体験ができるようになっているわけです。ぬかりなし。
でも、積極的にそういうプレイを試してみないとわからないですよね?
「装備を切り替えてスキルを使い分ける」という体験をして欲しいなら、
そういうプレイが必要になるようなクエストを用意しておくべきだったのではないですか?
ですねぇ。おっしゃる通りです。ぬかりあり。
せっかくなので誰か「ぬかりちゃん」という萌えキャラをデザインしてください。
「そ、そんなのワザとよ! ワザと!」
これはなんと言うのでしょう? ツンボケ?
そんな萌え萌えな脳内ぬかりちゃんと一緒に製作当時の日誌を読み返していたのですが、
ものすごく頑張って作ってたのですね。
ちょっと感動しちゃいましたですよ。
バランス調整に10ヶ月近くかけていたなんて。
そのときに「そもそも何のためにプレイするのか?」みたいなことを考え始めて、
「ゲーム」とか「面白い」とかいう概念の意味がわからなくなってきたのでした。
それまではなんとなくわかっていたつもりで、
実は全然わかってなかったということに気付いたのでした。(えへへ)
日誌を読み返していて、そうか、当時はこういうことを考えていたのか、と、
勉強になることがいろいろありました。
なかなか興味深いことが書かかれていましたです。
おいら、すっかりこの人のファンになっちゃいました。自分大好き!
うん、こんなに頑張って作ったんだし、3000円ぐらいいただきましょうよ。
ですよね。おいらもそう言おうと思ってたところです。
気が合いますね! 自画大絶賛!
というか今となってはお金儲けしたいって気持ちはあんまりなくて、
当時はあわよくば札束を風呂桶に満たしてダイブ! なんてささやかな夢を見たりもしてましたが、
どちらかと言うと、有料ゲームとして公開しておくこと自体に意味があるのですよね。
個人製作だからって無料じゃないといけないってわけじゃないし、
もっとみんなお金取ろうぜ! 経済を循環させようぜ!
このぐらいの出来でこの値段で公開していいと思うですよー、
と、個人製作をしている他のみなさんへのハッパかけ、という意味があるのです。
え、マジで? 本気? 正気? 健康? あんた誰?
うんうん、それなりにマジメに言ってるつもりですよー。
正直ちょっと、商売としては失敗だったなーと思ってます。
試用版のプレイ範囲が狭いのは、
「これは有料ゲームですよ」ということをハッキリさせるためにそうしたのですが、
これは逆にした方が、きっと売れやすいと思います。
つまりクリア直前まで無料にしておいて、
終盤以降の部分を有料にしておく。
この方がお金を払ってくれる人は増えると思います。
この私が適当に推測して言ってるんですから間違いありません。
でもその売り方だと、フリーゲームなのか何なのかが曖昧になってしまうので、
それが嫌だったのです。
というか「フリーゲーム」という言葉が、あんまり好きじゃないです。
ちょっと黄色っぽいお米、ぐらいあんまり好きじゃないです。
お金を取らないってことを、妙な形で美化してしまっている感じがするのです。
実際のところ、お金を取らない理由って、
「インフラの都合」「作者に自信がない」というのが大概のところだと思うのですよ。
無料が良いことだという信念を理由として、そうしているわけではないと思うのです。
にも関わらず、そこで「フリーゲーム」なんて言葉を使ってしまうと、
そのへんの理由が覆い隠されてしまうような気がします。
「へへへ、『フリーゲーム』作ってるんだ、ぜ?」と、(図らずも)満足してしまうというか。
「フリーゲーム」という言葉を使うことで、
文化的に意義のあることをしている、という錯覚に陥ってしまうというか。
そうでもないですか?
ですよね。ちょっと言いすぎちゃいました。てへ。(ごめんね、ゆるして)
えっと、何の話でしたっけ?
「心惑う闘技場」を買ってね(上目遣い。うるる)。
というおはなしでしたー。
わーわー。ぱちぱちぱち。
思ったこと:
今年が人生最後の年でいいような気がしてしまいます。
別にこれといってやりたいこともありません。
もちろん生きていれば日々何かと思い煩うことはありますが、
生きているから煩悩が生じるのであって、
煩悩のために生きているわけではないと思うのです。
そうかといって自殺はできません。
病院行ってこようかな。健康診断を受ける。
今までは、何か大きな病気が発見されたら怖い、と思って
そういうのを避ける気持ちがあったのですが、
今ならむしろ、不治の病が発見されたい。
もう手遅れで余命ンヶ月。
いや、でも、今なら手術すれば助かる可能性がある、とか言われたら困りますね。
しかし健康診断を受けたから不治の病になる、というわけではないわけで、同じことか。
そういえば歯医者さんには定期的に検診に通っています。
これはなんででしたっけ?
あ、そうだ。一度、虫歯を放置して悪化させて痛い思いをして、
もうあんな痛いのは嫌だ、ということで、定期検診を受けることにしたのでした。
痛いのは嫌です。
余命ンヶ月なのはいいとして、末期癌とか、痛いっていうじゃないですか。
痛いのは嫌だなぁ。モルヒネってどのぐらい効くのでしょう。
お金持ってないとそういう治療してもらえなかったりするのかな。
安らかに死ぬためにも、動けるうちにお金を貯めておく必要があるんかな。
頑張って働こう。
あ、「心惑う闘技場」買ってね(上目遣い。うるる)。
|