@最近の雑想
冬コミに向けて同居人をブレーンストーミングの相手に巻き込みつつあれこれと思案をしている。そんなわけで近頃強く想っているのはディプロマシーが「実に素晴しいクソゲー」であるということ。
…これだと私と同居人の人以外には意味がちっとも伝わりませんね。折角書いているのだから(原稿の下書きも兼ねて?)もうすこしわかりやすく書き下してみる。
- ディプロマシーの見た目のルール(盤状のユニットの移動規則)は至って単純である
- ユニットの強弱もなければややこしいZoCもない。複雑と言えるのはせいぜい海岸に関する扱いと輸送ぐらい
- しかもランダム要素がない
- だがしかし、各ターンの移動フェイズは不完全情報ゲームなのでプレイヤーにとってはランダムがあるのに近しい
- 複数のプレイヤーの行動を同時解決するので、他のプレイヤーの行動に関する情報は確定的でない
- しかしそんな単純なルールにも関わらず、ディプロマシーは極めて複雑なゲームである。
- その複雑性を発生させているのは「情報のあまりの不完全さ」だ
- その不完全さを解消するために交渉して自分の選択肢と引き換えに相手の選択肢を減らして少しでも状況が見えるようにする、というのがディプロマシーにおける交渉の第一義的な動きだろう
- しかしながらそうして得られた相互制約を放棄すること(=裏切り)は優位を発生させる
- そこで第三国を交えた同盟とすることで裏切りに対するペナルティを増加させる…のだが、それでも二国で結んで裏切れば以下略
- そんな感じでいくら考えても局面は結局「情報のあまりの不完全さ」に絡め取られたままとなる。
- そんなわけで、(メカニズム的にも)先読みとかがおそろしく通用しないわけだ。
- そしてその複雑さを乗り越える手段をディプロマシーは交渉以外に用意しない。
- ぶっちゃけて言うと「プレイヤーに全てを委ねてデザイナーはバランス取りを放棄する」スタイルのデザインである
- 余談:ゲーム内ゲームとしてオークションを導入するのもこれにあたると思う
- そんななげやりなデザインがクソゲーでなくてなんだというのだ。
- (最終的にゲームバランスをデザインしているのはプレイヤーだ!)
- しかしちゃんとわかってるプレイヤーを揃えてやるディプロマシーはたまらなく面白いのである。
+comment(6) +trackback(1)
速度面で懸念していた部分のO(1)化を敢行。昨日と一昨日で適当にコードを組んで今日は本番に近いデータ突っこんで試験。そして書きながら途中でデータ構造変更とかしてたせいでバグだらけだったことが露見。
そのへんを解消して現在はダミーテスト環境でぶん回し中。大胆な見直しのおかげでかなり速度は向上している…ように見える。しかし結局肝心のモジュールからO(N)な部分を排除することはできなかった。最頻で呼ばれていたくせにO(N)だった部分をO(1)化、その実現のために頻度的にはそうでもなかった部分がO(1)からO(N)に、という変更なので全体としては高速化しているはずなのだけれど。O(N)ってもbinary search(O(logN)なアルゴリズム)を使って高速化をかけてるし。
本当はどっちもO(logN)になるように2つのbinary treeでインデックス化されたデータ構造とかにするべきだったんかなあ、などと悩みつつ、しばらくはあれこれテストしてみる所存。
+comment(0) +trackback(1)