○インペリアルフォース2
http://www.ss-alpha.co.jp/products/imperialforce2.html

お手軽なSF風戦略SLG。
それなりに繁栄していた銀河で大宙震が起こって、星系が孤立してしまったので復興させようというストーリー。
ついでにこの機会に全銀河統一してしまおうぜ、ってノリ。

体験版もあって、中に製品版のマニュアルも入ってるので詳しくはそっちでどうぞ。

○攻略メモ
とりあえず以下はマニュアルを読んで、何回かやってみて感覚を掴んでから読むと吉。
ただし以下はパッチ適用前の情報がほとんどです。

・種族の選び方とその特性
【正統族】
なんでもできる。なにも特化できない。
銀河の形成状態と自国の位置などがどんな状態でも臨機応変に対応できるのが強み。

【剛健族】
軍事力強し。物量にものを言わせた力押しでなんとでもなる。
序盤にどれだけ生産できるかがポイント。
できなければ後々苦労するかも?

【女系族】
外交に長ける。経済力もあり。
「探索」〜「国王」序盤は軍事力の不足に泣くため、周辺国家と不戦条約を結ぶことで侵攻ルートを一つに絞ることが必要。
後半は経済力に後押しされて軍事力が増大するため楽になる。

【技能族】
技術特化。他はからっきし。玄人向き?
工業力のなさが致命的で、序盤に他国と艦隊戦をしても負けることが多い。
いかに早く必要な武装を強化できるかにかかっている。大器晩成型。

【猫科族】
未プレイのため詳細は不明。経済力だけが低めで、他が高め。外交○。
「国王の世紀」序盤はかなり楽に侵攻作戦を展開できそう。
だが経済が低いと工業力が落ちるので、長期戦になってくると外交努力が必要になるかも。

【長毛族】
ハムタ□ウの一族(一部伏字)。やっぱり未プレイ。
文字通り鼠算式に人口が増加しているっぽい。
人口が多い = 戦死者が出ても痛くない
圧倒的な物量作戦でなんとかするしかなさそう。
ただしあまり高価なものばかりだと経済力がもたないと思われる。

【液状族】
詳細不明。外交×。工業と科学がどちらも高い。
外交は捨てて、艦の質と量でなんとかする。
実は初心者におすすめ?

・戦略
【基本】
リンクを切らさない。
星系が侵攻を受けたとき、その星系に自艦船がいなければリンクが切れる。
艦船の少ない序盤は難しいが、余裕があれば重要な場所には1隻でいいので置いておく。
宇宙港があれば侵攻を受けていても艦隊を編成できる。
宇宙港がない場合は、防衛用に艦隊を置いておく。
また星系の周囲をあらかじめ探索しておくことで敵の侵攻を事前に察知できるようにし、艦隊の派遣が早期にできるようにする。
下級仕官もばりばり使っていく。

【探索の世紀】
設計は特にする必要は無く、最初からある艦船のみで何とかなる。
とりあえずほかの星系を見つけないと話にならない。
電測艦は2隻以上を組み合わせて運用するのが基本(探査範囲が大きくなる)。
探査時は星になるべく近づいて、その星の入植度合いと宇宙港の有無を調べておく。
惑星占領には火力が必要のため、輸送艦数隻のほかに中型艦を1隻以上つけられると良い。
ただし未入植の星の場合、輸送艦だけで事足りる。

ある程度進むと敵が攻めてくることもあるので、余裕があれば必要な艦隊を各星系に置くことと、星系周囲の探査を進めておく。

【国王の世紀】
外交可能。外交については別項で。
星系の配置状況が判明するので、とりあえずリンクの確認。
ただし目測するしかないので、ぎりぎりつながりそうな所が微妙に分かりづらい。
確認後、どこへ侵攻するのかを考える。
ここは自国の兵力とも含めて。
もし不足気味なら、とりあえず現在の星系を確保することに専念してもいい。
ただし未探査の領域にある星系が宇宙港をもっているかどうかなどは不明のため、電測艦による探査は行ったほうがいいかもしれない。

ちなみに難易度が高い場合、敵と交戦状態に入るとその敵はこちらのリンクを分断するような攻撃を仕掛けてくるので注意が必要。

【皇帝の世紀】
ほぼ外交は必要なくなる。
「国王の世紀」でどれだけ艦船を溜めたかが勝負の分かれ目。
まあ普通にやってれば、ざっくりと片付けることができる。

侵攻を受けた情報が出てから、宙域戦闘の準備をしても間に合う。
ただし撤退できず負けると宙域を取られるので、敵の艦隊数を見てこちらも艦隊数の調整をする。
ただし一度の戦闘に参加できるのは6個艦隊までなので、それ以上はしてもあまり意味はない。

侵攻時は敵の艦艇がほぼ出てくるといってもいいので、上級司令官数人+下級指揮官で攻める。

・外交
初級〜中級レベルではやらなくても特に問題はないかもしれない。
外交が必要になる場面は、周辺に複数の国家が存在する場合である。
同時に攻撃を受けることを避け、こちらから侵攻ができる余力を残すために必要。

「不戦条約」は「友好」以上で可能。
「同盟」は「親密」で?(まだやったことがないので不明)

特に自国が銀河の中心に生成されたときなどは外交の出番である。
「不戦条約」はいつでも破棄できるので、結んでおいて損はない。
ただ一旦破棄すると親密度が下がるので、破棄した時は一気に攻め落とすこと。

・政策
基本的には長所を伸ばすよりは、短所をカバーする政策がいい気がする。
バランスが悪いと、伸びが悪くなるので。

・技術開発
「今必要なもの」より「次に必要なもの」を開発する。
しかし科学が低い種族だと、ゲーム終了までに開発はほとんど進まない。

・艦船と武装
艦艇の老朽化(建造画面で、白以外の文字で表示)が進むとまったく使い物にならなくなるので、設計しなおす必要がある。
ただこれに合わせて設計しなおすだけだと、間違いなく設計枠があまるので、新兵装が出来たときなどに作り直してもいい。

最終的にはおそらく
 中型艦 - 突入駆逐艦(実体砲弾、複合装甲)
 大型艦 - ○○巡航艦(巡航ミサイル、ジャマー)
超大型艦 - 主力戦艦(ミサイル、ビーム、実体砲弾、電磁波シールド)
が基本となる。
前衛中央を守るための巡航艦を作ってもいい。

○バグ?
「探索の世紀」がいつまでも続き「国王の世紀」に入らないことがある。
大体開始後2〜3年で移るはずなので、それ以上続くとフラグ立てに失敗してるかも。
リセットするしかないと思われます。

○改善したらいいかもしれない点
艦隊の編成が面倒なので、あらかじめ構成の雛型を設定しておいてそこから選択できるようになればいいのになあ・・・。
当選してた。
英語版で遊んだが、やはりローカライズされた画面というものはいいものである。わかりやすいしね。
でも、情報を公開してはいけないらしい。規約で。

まあ、そのうち解禁されるんだろうけどね。
戦闘システムだけに限ればゲームデザインについては、別のゲームからパクったのであまり考えていない。
といってもそのゲームのソースなどを見たわけじゃないので、細かい計算などはこっちで決めた。
ただ、そのあたりの実装よりもGUIを先にしなければならないので、出番はまだないが。

表示はそこそこ出来てきたので、本格的にGUIを設計する段階に来た。
ただ問題は表示する画像である。
今のところ、本に付録のデータなどを使っているが、それではあんまりであるとは思う。
しかし解決手段が思いつかない。

ちなみに開発言語はC#。当然.NET環境である。
相変わらず音を再生するならManaged DirectXを使わないといけない。

でも社会ではまだまだC++が主流。
C++は実はあまり使ったことがないのでよくわからない。
そっち方面で就職するならやっぱ使えないとまずいかな。
でもまあ、プログラミングだけが仕事ではないし、そもそも社内ライブラリなんかもあるだろうからあまり考えなくてもいい気もしてみたり。
今回はいままでの作品に比べて本筋のストーリーが短め。
ただ続編(2nd Chapter)にそのまま続くので、全体的には序盤という感じ。続編の発売が待ち遠しい。

とりあえずこういうストーリーは大好きです。でも続編という手段なんてとらずに最後まで一気に仕上げてほしかったなあと思う。かなり消化不良気味。

主人公のエステルは……ツインテールで「あんですとー」や「キターーーー」とか叫ぶともうね、明らかにあれじゃないですか。まあ別にいいけども。
5は微妙に展開がおかしいところが気になる。
戦闘システムとかもちょっと変。
まあでもあんなものかしら。

3はさすがに古い作品だけあって、今の作品と比べてはいけない。
そういえばPSPでリメイクされるらしい。やってみたいがPSPがないし、買う気もない。

というわけでやっと6に取り掛かれるよ。

そうそう、今日でバイトやめました。円満に、ハイ。
英雄伝説3(白き魔女)をやったのは高校のとき。
もはやその内容は覚えていない。

ともかく4をやった。
楽しかった。ストレスをあまり感じずにストーリーに入り込めるのはやはりすばらしいと思う。
思わず寝食を忘れてのめりこんでしまった。

というわけで5をやりたくなる。
でも噂によると、ガガーブ三部作の中では4が一番出来が良いらしい。

ちなみになぜ今やってるかというと、6をやる前にやりたいと思ったから。ガガーブ関係ないけど。

やることなし

2005年1月5日 ゲーム
突然ですが実家です。一週間ほど滞在予定。
年末に実家送りにしたPCの調子をみたり(いじくってるうちにHDDの中身が飛んで再インストール)してすごしております。

で、暇なんで何かしようかと。
書きかけで放置の小説の続きはまったく思い浮かばないのでパスしてると、夢見心地で浮かんできたのはゲームのシナリオ。
かつて企画して、2割ぐらい書いたところで頓挫したものがあったのです。そのときは小説向きの内容を考えていたのですが、今になって思うと無理があるなあと思ってみたり。

何の役に立つかはまったく不明ですが、設定だけ煮詰めておきます。どうせ何かの役に立つ頃にはまた書き直すはめにはるんだろうけど・・・。
・highplusのオンラインゲームプレイ日記
http://high.mine.nu/highplus/

私もMovableType使ってみようと設置してみた。
スタイルシートとかの知識がまったくないので、そのあたりはいじっていない。

ちなみにhighplusというのは、私がネトゲでよく使う名前である。
単純に「high」という名前はすでに取られていることが多い、というのが理由であったりする。

P2P

2004年10月24日 ゲーム
前回の日記に書いたとおり、来年度は「P2PでMMO」をテーマに研究しようと思ったわけだが、そんなわけでまずP2Pとはなんぞや、ということに思い至る。もちろん書物などでそれなりに学んではいるが、やはり半年以上のブランクは当然重くのしかかるわけで、いろいろと忘れていることも多かった。
そこでとりあえずネットで調べることにしたら、すぐに見つかった。

http://homepage3.nifty.com/toremoro/p2p/p2p.html

すばらしい。さすが現在の研究の主流。資料もすぐに見つかる。前の研究とは大違いだ。
ともかく読んでみる。何々…
ただし、P2Pは1対1通信なので、大規模RPGのような大きなコミュニティ内で複雑に、時には多対多ユーザ間がチャット等でやり取りするゲームには不向きです。

へぇ…。なんか真っ向から否定されてるし。
でも否定されるとやりたくなります。負けず嫌いと言われようとやります。
というか私がMMOでP2Pを使える部分で、まだ未研究なとこって「チャット」だと思って、いろいろ考えてたのですが見事ですね。
これならいっそ、Pure-P2P(サーバ・クライアントモデルを使わず純粋にP2Pだけで勝負)でMMORPGの構想でも練ってやろうかしら…。

でもなんかそれだと、研究テーマとしては不適切だなあ。
てか1年で終わるんだろうか。
真・女神転生オンライン IMAGINE
http://www.megatenonline.net/index.html

9/1、つまり昨日からクローズβ版テスターの募集開始。
まあこんな企画があること自体、当日知ったばかりなのですが応募してみました。
テスト開始は1ヵ月後だそうです。まあ、こういうのに当選したことはないので、たぶん外れるでしょう。

で、内容ですが、昨今のぬるい韓国産MMOに比べて、さすがメガテンって感じの内容ですね。
最初から対立している陣営がいて、どちらかに所属することになるってのは、もはや過去のものとなってしまったダークアイズや、近々日本語版が登場するというDark Age of Camelot(DAoC)なんかでもあります。
シビアさが売りのゲームにはもってこいのシステムでしょう。

ただ良く見るとシステム的にはMMOというよりMOなのでしょうか。まあ変にMMOにされるより数段マシです。
ともかく、成功を祈ります。
・ノベルゲームプログラミング
とりあえずゲームプレイヤーは一部面倒な機能を除き出来てきたので、次からはスクリプトコンバータを作ろうと思います。
そのためにはまず仕様を決めないと・・・。

8月頭にはコンバータが出来上がる予定だったのですが、8月いっぱい掛かりそうです。まあ、ゲーム自体の発売がまだまだ先なので余裕はあるにはありますが。

それにしても暑い。電気代がやばい。
というかPCの発熱がすごいかもしれません。

肩こり

2004年7月5日 ゲーム
肩こりが激しいです。
プログラムを書いてるとどうしても肩が凝りますね。

とりあえず月〜水曜日はバイトの関係でプログラムの進行はあまり望めません。土日に必死こいてやりましたが・・・。
今月中に製品版の雛形っぽいのを作ろうと思っています。できるといいなあ。
自作ノベルゲームエンジンですが、スクリプトコンバータとスクリプトプレイヤーの二つに分かれます。名前の通り、前者が人間が書いたソーススクリプトから中間言語を生成し、その中間言語を元に後者が動作するという寸法です。
で、今作ってるのはスクリプトプレイヤーのほうです。とりあえず名前は「INGP」としています。コンバータのほうは「INGC」になるでしょう。両方まとめて「ING」とでも呼びましょうか。
ちなみに前に作ってたのは「SAG」でした。こっちもプレイヤーとコンバータに別れてましたが個別の名前はなし。まぁ過去の話。

で、これらの違いですが設計方針が大きく異なるため、作り直しをしています。ただしSAGコンバータは手をつけていなかったので、プレイヤーに関するところだけですが。
どう方針が違うか、といいますと、ユーザから隠蔽する部分とそうでない部分を明確にわけました。それからSAGではGUIを制御するクラスに中間言語を読み込んで処理する部分も含まれていましたが、これを分離しました。これによりGUIでの処理をほぼユーザのキー・マウス入力に集中させることができるはずです。
まぁよくわからん説明ですが、要するに「一極集中」の悪い見本をやめて「分散処理」をすることにしました。・・・というかオブジェクト指向の基本ですね。
それに加えて、SAGでは将来の拡張性を考えるあまりソースが複雑になってしまっていたのでその部分を見直しました。そのためINGではバグフィックスのしやすさを重視し、クラスに対して明確な役割分担をさせています。各々のクラスは専門化し、他のクラスへの干渉は極力控えるようになっています。

まぁそんなところでしょうか。ただまだINGの試作型が出来ていないのでテストもしていません。大半はSAGのソースの良い部分を抜き出してあるのでバグも少ないでしょうが、どうなることやら。

ちなみに昨日は夜に再開しようと思っていたのですが、朝寝ようとしたら親から電話があって起こされてしまいました。どうにも寝付けないので、昼過ぎから夕方に掛けてスクリプト処理の主に画像に関する部分を書いていました。とりあえずGUIの部分を書けばテストはできそうですが、それはまた後日・・・。

・メモ
C#を使っていて少し戸惑ったこと。それは列挙型のキャストに関すること。
列挙型を文字列に変換するのはすぐにわかったのですが、その逆がなかなかわかりませんでした。で、調べてみると解決
http://www.atmarkit.co.jp/fdotnet/csharp_abc2/csabc2_016/cs2_016_04.html#cs1614

enum Enume{...}と定義したとします。
string strをEnumeにキャストするには
(Enume)Enum.Parse(Type.GetType("hoge.Enume"),str)
といった感じにするとできます。
hogeにはEnumeを定義したNamespaceやクラス名称を入れましょう。
また最初の括弧つきEnumeも必須です。

しかし、これは使いにくいな・・・本来なら使わなくてもいい代物なんだろうか。

・17:30追記
文字列から列挙型へのキャストに関して、Enumeをクラス内で定義した場合どうも上の方法だと上手くいかないようです。
対処法としてはEnume hogehogeと定義して
(Enume)Enum.Parse(hogehoge.GetType(),str)
としてやるといいようです

腹痛

2004年7月2日 ゲーム
昨日の昼、いきなり激痛に襲われ危険なことに。
1時間ほどの間断続的に攻撃を受け、あやうく撃沈するところでした。夜には治ってましたが、一体何が原因だったんだろうか。
これはやはり、夏は食べ物に気をつけようってことでしょうか。

それはともかく現在朝5時前ですが、前夜よりプログラムを書いていました。GUIは後回しということで内部処理の記述を進めています。とりあえず画像処理関連は前のプログラムと同等のことができるようにしました。といっても表示できないので、出来ているかどうかはまだ確認できません。

というわけで次に中間言語を処理する部分のうち画像関係のみを書いてから、テストできるようにGUI部分も書こうと思います。

でも疲れたのでまた今夜ということで・・・。

・ゲームプログラミングで検索してくる人が多いので

私が利用しているサイトとか本の紹介でもしてみます。
とりあえずこの手のアドベンチャー形式ゲームをC#を使って作ってる人が珍しいので、それそのものの情報ってのはなかなかありません。なので最初はどうしても手探りになってしまいます。

というわけでとりあえず本の紹介。

・「C# 言語リファレンス Black Book」 Bill Wagner 著、アクロバイト 監修、スリー・エー・システムズ 訳(インプレス)
http://home.impress.co.jp/reference/1654.htm
 C#の本。値段の割りに内容が濃いと思いますが、あまり読み込んでないので確証なしです。初めてプログラミングをする人にはちょっときつめです。

・「アドベンチャーゲームプログラミング」坂本千尋 著(ソフトバンクパブリッシング)
http://www.sbpnet.jp/books/products/detail.asp?sku=4797320273
 かつて表紙およびサブタイトルが話題になった本の改訂版。内容はC++に沿って書いてあるのでコード自体はあまり役に立ちませんが、アルゴリズムやエフェクトなどの実現方法を考える上で参考になります。VC#(.NET Framework)ではGDIではなくてGDI+を使うのでその部分に気をつける必要があります。

本としてはこれぐらいです。
もちろんVisual Studio .NET 2003のドキュメント自体も参考にしています。ただMicrosoftの日本語訳はかなりわかりにくいのが苦しいです。

というわけでネット上のリソースを紹介します。

・.NET Tips(DOBON.NET内)
http://dobon.net/vb/dotnet/
 Tipsですがその内容はかなり多岐に渡っています。GDI+の扱い方など実例もあるのでわかりやすいです。かなりお世話になっています。

・GotDotNet Japan
http://www.gotdotnet.com/japan/
 公式フォーラム。掲示板では同じような内容で悩みを抱えている人が多いので、解決策が示されている場合もあります。特にWindowsAPIやManaged DirectX関連については紹介しているサイトも少ないのでここで情報を探すほうが早いかもしれません。またInstall Shieldを使う場合に関する記事もあったような・・・

とりあえずこの程度です。
あ、あとManaged DirectXのインストールに関する記事はこちら
http://www.dwahan.net/nyaruru/getreadyformdx/
その昔私が高校3年のころ、プログラミングを志したきっかけとして戦術シミュレーションゲームを作りたいというものがありました。そのころどんなものを考えていたかはもはや覚えていません。というのも大学に入ってからも色々と考えた結果、構想にかなりの変更が加えられたからです。
もちろん構想であるわけで、なんら実態を伴っていません。要するに全ては私の頭の中です。
そのSLGですが宇宙を舞台にしたものを考えていました。時代物はそのころほとんどやったことがなかった、というのが理由です。今でもやってませんが。ファンタジー系はRPGのほうがしっくりくるので、個人的にはシミュレーションにはあまり向かないと思います。

で、世の中には当然宇宙物戦略or戦術SLGはすでにあるわけで以下にその例をあげてみます。私が知ってるものだけ。

・メビウスリンク
・銀河英雄伝説

あれ?なんか思いつきません。海外にいけばもっとあるんでしょうか。
まぁそもそもSFをいれてしまうと考察が複雑になってしまうため、原作ありゲームでないと厳しいというのもあります。それと手軽に遊べるものではないのであまり売れ行きが見込めないってのもあるんでしょうか。
ちなみに某ロボット大戦はファンタジー系として私の中では分類されています。

で、メビウスリンクはあまりよくわからないので銀河英雄伝説の話。最新作ですが時代の波には逆らえずMMOになりました。closeβ中なもんでやってはいませんが、評価を見ると散々なようですね。まぁ公式ページに載ってるほとんどのことがいまだ未実装ってのが原因でしょう。資金回収のためかパッケージ先行発売とか、見切り発車にしか見えません。

まぁ一応ご紹介。
http://www.gineiden.com/

最近ネットの社会は低年齢化が進み、MMOの世界も中の人は低年齢化が進んでます。まぁ低年齢でも考え方がしっかりしてる人もいますし、逆に大人でも考え方が子供にしか思えない人もいます。そして間違いなくこのゲームが、公式に書いてある通りに完成すれば、それなりの思考が出来る人でなければ楽しめないですしゲームにならないでしょう。そのことを開発元は考えているのでしょうか。

・・・まぁ考えていたら、現状みたいなことにはならなかったんでしょうね。やってない人間が言うのもあれですが。

くれぐれも玄人集団を対象にしたゲームを作る際には、下手なことをして反感を買わないようにしましょう。
「玄人でも素人でも楽しめる」
というのは簡単ですが、システムがよほどしっかりしてその落差を埋めないと双方にとって悪い結果しかもたらさないのです。

以上、何を書いているのかよくわかなくなりました。
MMORPGに関する考察の第2回では、MMORPGとはどうあるべきかの道筋を知るために、TRPGとの関連について述べる。TRPGとはTabletalk Role Playing Gameの略称であり、その歴史はMMOよりも古い。またRPGの元祖とでも言うべき存在であり、コンピュータを用いたRPGよりも前から存在してきた。

TRPGについて軽く触れておく。TRPGにおいては一人のプレイヤーは一人のキャラクターを演じる。これはMMORPGと同じである。しかし同時に参加できるプレイヤー(=キャラクター)の数は通常2〜6人程度であり、またプレイヤーの他にゲームマスターと呼ばれる存在が必須となる。なぜならば、TRPGはコンピュータを用いたゲームではないからである。
あるキャラクターが「○○をしたい」といえば、ゲームマスターがそれが可能かどうか、また成功するかどうかを判断し結果を伝える。成功か失敗かの判断は公正さを求めるために、サイコロ(ダイス)を用いて判定することが多い。
TRPGにはルールブックという文章が存在し、その記述に従ってゲームは進行する。といってもそこに載っているのは世界観と判定方法などごく基本的なことであり、実際の運用はゲームマスターとプレイヤーに任せられている。通常ゲームを始める前にゲームマスターが「シナリオ」と呼ばれるものを作成し、それに則ってゲームを楽しむことになる。

このTRPGは歴史的に古いだけに、完成度という点においてMMOより秀でているのは間違いない。またMMOとの共通点も多いことから、TRPGに触れることにより完成度の高いMMOを想像できないか、という視点からTRPGとMMORPGの特徴を述べてみる。

TRPGの特徴的な点としては、やはりその自由度の大きさであろう。コンピュータを用いてしまうとどうしてもその自由度には制限がかかってしまい、誰がやっても同じ道筋を辿ることになってしまうのだ。TRPGにおいてはそこを制限するのはゲームマスターの作成した「シナリオ」であり、その「シナリオ」自体いくらでも書き換え可能なのである。

自由度というものは時折MMORPGでも特徴として語られるものである。もちろんそれはコンピュータRPG(DQ,FFなどのことでありこの文章中ではMMOを含まない)と比較した上でのことである。TRPGで言われる「シナリオ」はMMOでは「クエスト」と呼ばれるものにあたるだろう。たいていのMMOにはクエストが多数存在し、またパッチなどによってクエストの数は増殖するものである。
言い換えれば、MMOにおいて自由度を語るならばクエストの充実が不可欠である、ということになる。無論、量だけではなくその質も問われる。

現在、日本におけるTRPGでは、「制限された自由度」をプレイヤーが求める傾向にある。これはゲームシステム的にあらかじめキャラクターが取れる行動の範囲が決められている、ということである。例えば「キャラクターは必ず正義の使途であり、悪を倒さなければならない使命を持つ」などといったものがあげられる。コンピュータRPGにおける主人公のような態度が好まれるのだ。現在の若者がそのようなコンピュータRPGに触れてきたことを考えればこの流れは仕方の無いことかもしれない。またそのようなこともあり、シナリオがどうしてもマンネリ化しつつある。面白いシナリオを作るには、自由度を制限されてしまうとどうにも身動きがとりにくい。

さて、これを踏まえてMMORPGはどのようになればいいのか。つまるところ自由度を維持しつつ、キャラクターに何らかの目的意識を持たせることができればいいのではないか、ということになる。もちろんその目的は「より高いLVになる」などといったことではない(そんなものはすでにどのMMOにも存在する)。具体的には次回述べることにする。

○以下補足事項

・RPGにおける自由度
本書で述べた自由度が大きい、とはそこに何も用意されていないことではない。RPGにおける自由度とは、ある事柄に関してとれる行動の自由度、である。「ある事柄」の部分は当然用意されなければならずここが「シナリオ」または「クエスト」である。

・TRPG「Race」
http://easy.to/race
私が制作にほんの少し関わったRPGである。大阪大学RPG研究会によって制作され、現在はそのサポートはRace補完委員会によって行われている。TRPGの入門に、とはいかないが手頃な値段である・・・(宣伝)
自作AVGのほうがさっぱり進まないので、いろいろと妄想をしてみたことをまとめてみる。さすがに5月入ったらやらんといかんなあ、と思いつつ・・・。

というわけでMMORPGの考察である。なにが「というわけ」なのかさっぱりわからないのはいつものことだが、今日はそれなりに真面目な話である。ちなみに「考察」であるため、今回は「である」調の文章になることをお許しいただきたい。なお、本文中にMMORPGの中では常識として扱われる用語が登場することもあらかじめ断っておく。

単純に考察といってもアプローチの仕方はいくつもあるが、今回は例を挙げつつ話を進めようと思う。では例として何を使うかといえば、私がもっとも長くプレイしている「ラグナロクオンライン」(以下RO)を用いることとする。またおそらく、現在日本の中でこのゲームがMMORPGの中ではもっとも遊ばれているものだ、というのも理由である。

まず最初に断っておくことは、私自身このROというゲームを高く評価していないということがある。冷静に判断すれば他のMMORPGに比べれば悪い点ばかりが目立つ。その悪い点の中でも特に目立つものを以下にあげてみる。

・パーティプレイを補助するシステムの少なさ
MMORPGはMMOであるがゆえにパーティプレイが推奨されるのは自然な流れである。ゆえにこの手のゲームはそれを補助するシステムを持つべきだが、残念ながらROにはそのシステムが不足している。「パーティマッチ機能」ともいえる「パーティに入りたいことを表明できる機能」が存在しないのだ。また自分以外のキャラクターのLVを見ることにかなりの制限がかかっている。つまり自分のLVに近いキャラクターを探すことが非常に手間がかかる、ということである。
さらに実際にパーティを組んだとして、経験値を分配する機能はあるもののアイテムを分配する機能は存在しない。これは他のゲームでも実装されていないものも多いが、この機能が無いために少なからぬ問題が起こっていることもまた事実である。

・クエストのなさ
モンスターを倒すだけがRPGではない。クエスト(たとえば「○○へ手紙を届けてほしい」など)をこなすこともRPGである。そしてキャラクターはクエストをこなすことによってもお金やアイテム、さらには経験値を得ることができる。
モンスターを倒すだけでもこれらを得ることもできるが、それだけではつまらない。またクエストをこなすことによって、たとえばその世界がいったいどういう世界なのか、ということを理解する助けにもなる。つまり物語の中にプレイヤーを引き込むためには不可欠のものなのだ。
ROにもクエストはあるが、それは一種イベント的なものであり、一過性のものである。そこに感じられる魅力はあまりに少なく、それ以前にROの中のクエストの数自体もあまりに少ない。

・生産スキルの問題
ROの生産スキルといえば、「ブラックスミス」による「武器の製作」と「アルケミスト」による「ポーションの製作」である。これだけである。防具を作ることもなければ、アイテム全般を作ることも出来ない。
また、普通生産スキルというものは、スキルを使えば使うほどその効果が上昇するものである。しかしROではそのスキルをあげるにはモンスターを倒して経験値を得なければならず、効果といってもあがるものは成功率であり、出来上がったものに付加価値が存在しない。すなわち非常に限られたスキルであると言えよう。

以上三つをあげてみたが、これだけでもなぜROがこんなにも普及しているのか疑問に思うかもしれない。そのからくりは実はそれほど難しくはない。理由を言ってしまえば「不完全である」がゆえに人気が高いのである。ただし、これは日本での話である。特に発祥の地である韓国では、ROはかなり下火になってきているようだ。
ROは不完全であるゆえに日本での人気が高い。それは日本人が良い意味でも悪い意味でも「礼儀正しい」ことに理由がある。システムが不完全であったとしても、ユーザ側がそこを補おうとし、そしてそれをきっかけにコミュニティができあがる。そうやって発展してきたのがROなのである。ROは迷惑行為をやろうと思えばいくらでもできるし、チート行為も他のゲームに比べればしやすいほうなのである。本来それを防ぐのは開発・運営側なのだが、日本においてはユーザ側でもそれを行おうとう動きがあったりするのだ。

つまりROの人気は計算されたものではなく、ただ単に運がよかっただけなのである。しかし運も実力のうちという言葉もあるように、全面的にROを否定するわけにはいかない。
というわけで今回はMMORPG考というよりRO考になってしまったが、次回はいよいよ本題に入ろうと思う。
(続)

#そういえばRO2(ルミナッティ(仮称))とかいうものが開発されているそうです。上で挙げた3点についても少し触れられた記事があったような・・・
#風邪をひきました。バイトをいきなり休むことになりました。印象悪いなあ・・・

アクセス元

2004年3月20日 ゲーム
暇なときにこの日記へのアクセス元を覗いているわけですが、やはりプログラミング、それも主にゲームプログラミングで検索して引っ掛かってることが多いですね。
まぁほとんどその話題なのは否定しません。他にやってることはあまりないですし。

で、そのAVGですが、とりあえず今はシステムメニュー辺りをいろいろといじってます。とはいえセーブ・ロード機能自身がまだできていないので、物凄く細かいところなのですが。

作っているのはいわゆるノベルゲームなので、右クリックメニューなるものを作ってやらねばなりません。凝った表示にしようとするとデザインとか考えないといけないので、ちょっと面倒な感じです。ただあまり妥協もしたくない。
さて、どうしたものやら。
・自作AVG
過去ログの機能については面倒くさいでしょうがたぶん大丈夫でしょう。
しかし、「すでに読んだ場所をスキップする」機能ってどうやって実現するんだ、と悩み中。いろいろと方法の候補はありますが、どれもあまりスマートなプログラムになりそうにないのです・・・。
先日セーブ機能の部分をプログラミングしましたが、上の部分のアルゴリズム如何によってセーブデータの構造が変わりそうなのでちょっと放置。
何にせよ、無事ずいぶんと見難いプログラムになってきていますね。

・歯医者
歯石をガリガリととられました。歯肉がやられてるので血が出まくり。というかこんなに血がでていいのか?
さらに「歯間ブラシ」なるものを受け取る。特定の場所をこれで磨けといわれましたが、滅茶苦茶痛いんですが・・・。

・LoadAssociation(http://www.geocities.jp/loadasosiation999/
鬱だ……
ニューPCにアンチウイルスのソフトいれてからおかしくなった
起動してデスクトップの画面出てから何か作業しようとするたびに固まる
反応無し
何度試しても同じ

結局再インストールのため
お絵描きデータが死にました
その他のデータも買ったときの状態に逆戻り

セーフモードで起動してアンインストールしてやればよかったのではないか、なんと思ってみたり。
後の祭りですか。しかし絵が死んだのは痛いですなぁ(汗

選択肢

2004年2月28日 ゲーム
自作AVGエンジンの話。選択肢が実装されました。

いや、まぁぼちぼちと進めて、ジャンプとか変数の取り扱いとかできるようにもなってたんですが・・・。
選択肢を作るとすると、マウスの動きを取得してやる必要があります。そんなこともあってかなり時間がかかるかと思ったんですが、そうでもなかったですね。これが慣れでしょうか。

とりあえず次は「システムメニュー」でしょうか。その前に「セーブ」と「ロード」の機能も考えなければなりません。後は「過去ログ」機能に「スキップ機能」・・・こうして見ると思った以上にやらなきゃならないことが多いですねぇ。

という感じでゆっくりと確実に進行しています、この企画。少なくとも私の担当部分について、ですが・・・他の部分も結構進んでるんですよ・・・ね?

1 2