Arcanum Guide – New Game

ふと、再燃してきたので技術屋志望でやってます。

Tarant以降が本編というか、一気に行動範囲が広がり膨大になり、1周しかしていないような私の手に余るので、Tarantに至るまでのガイドを目指してみましょう。
Tarantまでは、行動範囲も制限されていて、その中でArcanumとはどういうゲームなのかをかいつまんでくれているので(いわゆるチュートリアルに相当)、そこまでできれば後は応用です。

 

全体を通して大事なこと。

  • 小まめにセーブをする
    当たり前なことですが、初対面の人に話しかける前に毎回セーブしておくくらいの勢いで、こまめにセーブしておいた方がよいです。うっかり相手の機嫌を損ねるだけならまだいいですが、喧嘩になって殺し合いというのも起こります。不本意な話し合いになったらやり直せるようにしておいた方が進めやすいでしょう。ある程度さかのぼれるように複数のセーブを作っておくと尚よいです。
  • 分からないことがあったらマニュアルを読む
    ゲーム内でもマウスオーバーによってある程度は解説がありますが、そうでないものも沢山あります。分厚いマニュアルには大抵のことは書いてあるので、必要な箇所だけを探して読んでみましょう。大丈夫、ゲーム内の英語よりも簡単です。
  • 会話をする
    人に話を聞き、時には人を説得しましょう。Planescape: Tormentほどではありませんが、言葉は剣よりも強いことが多いです。
  • メモをとる
    大切な情報を得たら紙にでもテキストファイルにでもメモしておくとよいです。ゲーム内のLogbookにはRumors&NotesやQuestsの状況が記録されていきますが、Rumors&Notesは更新頻度が高く何処に必要な情報が書かれていたか見失いがちです。Questsは達成条件が記録されているだけで、それに至るまでの過程は自分で探さなければなりません。大抵のクエストはQuestgiverがどうすればよいか教えてくれますが。

 

Arcanum-Options.jpg

まずNew Game開始前にOptionsで、Default Combat-ModeをTrun Basedに設定しておくとよいです。

  • Trun Based
    Falloutでお馴染みのAction Point Trun Basedによる戦闘。
  • Fast Trun Based
    基本的にTrun Basedと同じだが、アニメーションが省略されている。
  • Real Time
    Diabloを意識したような、Action Pointとは関係なく相手と自分が同時に動く戦闘。

Real Timeは軽快ですが、あまりに軽快すぎるため、何が起こっているのかよく分からないうちに、PCやFollowerがやられていたりします。また、動いている敵をカーソルで指定するのが大変なため、Spellなどは使いにくいです。
しかしながら、雑魚敵をさっさと倒したり逃げながらFollowerに攻撃させたりと、Trun BasedだとAction Pointの制約によってやりにくいことも出来たりするので、慣れと状況次第ではTrun Basedよりも便利です。

これらの設定はゲーム中いつでも変更でき、Combat-Modeは戦闘中にSpaceキーを押すことでTurn BasedとReal Timeの切り替えができるため、状況によって切り替えるとよいでしょう。

 

New Gameではまず作成済みのキャラクターを選ぶか、新規でキャラクターを作成します。
Pick Charactorでは背景まで長々と考えられている作成済みのキャラクターが沢山用意されていますが、折角のRole-Playing GameなのでNew Charactorで始めましょう。

Arcanum-NewGame.jpg

性別(Gender)は好きな方でいいです。種族によっては男性しかない場合もあります。また、性別によってできるクエストや起こるイベントが異なったりします。

種族(Race)はなんでもいいですが、HumanかHalf-Elfが無難です。魔法を使うElfや、技術屋のDwarf、Halflingの盗賊、商売人のGnomeなどもいいですが、Human以外はElfとDwarfが対立していたり、Half-OrcやHalf-Ogreは特定種族に露骨に嫌われていたりと、種族間での好感度に偏りがあるため、会話がスムーズにいかないこともあります。
完全脳筋で会話なんざ知ったことかというのならば断然Half-Ogreですが、会話が必須のサイドクエストも多いですし、知能次第ではまともに喋ることもままならなくなったりするので、難易度は上がると思います。

関連資料:The Race of Arcanum – Arcanum JP Wiki (ManualやOfficial websiteにある種族に関する調査の訳出)

背景(Background)は何もないよりかは選んだ方が良いのですが、どういう方向にキャラクターを育てたいかここまでに決め、それに合った背景にすると良いでしょう。
Arcanumにおいては、社交的な魔法使いが圧倒的に楽で、技術屋が不遇とよく言われていて、私がプレイした印象でも実際そうなのですが、これは会話による交渉はプレイヤーにしかできないことと、戦闘はFollowerにも出来るため(場合によってはプレイヤーよりも強い)です。交渉や説得にはStatsのIntelligence、Beauty、Charismaと、SkillのPersuasionが重要視されます。このうちCharismaやPersuasionではFollowerの上限人数を増やすことが出来ます。
魔法使いにするのは、手に入れられるマジックアイテムを有効に使えることと、ゲーム進行に役立つ魔法が多いためです。
この社交的な魔法使いの場合だと、Charisma、Willpowerあたりが上昇する背景を選択すると無駄がありません。Intelligenceは魔法使いには必要ないため必要最小限になるでしょう。

魔法も技術を両立させることも一応可能ですが、大変な割に恐らく相当に弱いので、どちらかに特化させていくか、どちらもあまり使わずに戦闘オンリーまたは盗賊技能などを中心とした中立にする育成方針が望ましいです。

 

Arcanum-Sheet.jpg

次にキャラクターのポイント割り振りです。
最初は5ポイントありますが、以降はレベルアップ毎に1ポイント、レベルが5の倍数になった時は2ポイント得られます。このポイント数に対して、ポイントを割り振れる項目は山ほどあるため、慎重に割り振った方が良いです。一旦割り振っても閉じるまでは元に戻せます。ポイントは貯めておくことができ、New Game時も例外ではないので、よく分からなければ、とりあえず後回しにしてゲームを開始してもいいでしょう。
また、Skills(盾と鍵のアイコン)にはこの時点ではポイントを割り振るだけですが、ある程度ポイントを割り振っていると特定のNPCからそのSkillの訓練を受けることができ、ランク(Apprentice→Expart→Master)に応じた特典を得ることが出来ます。

ゲーム開始時からすぐにあると便利

  • Haggle
    次の初期装備購入時から有効。Expartを目指すと売買に困らない。
  • Persuasion
    Follower上限人数が増えるExpartまで。出来ればMasterを目指したい。

しばらくしたら欲しい

  • Pick Pocket
    NPCがいいものを持っていたら。またはクエストで解決方法の一つとして役立つ場合がある。また、懐を覗くだけならばこのSkillが無くてもでき、犯罪にならない。

Ranged weaponを扱いたい場合、矢や弾薬の確保の問題もあるので、BowやFirearmなどのSkillはすぐには必要ありません。
技術系も材料が無いため、この時点で取っても無駄です。薬草だけは最初からちらほら手に入るので、薬を作りたいのならば、Herbologyはありかもしれない。
また、RpairやHeal、Necromantic Whiteなどは取得しても、店員やFollowerが得意だったりするため、大抵のプレイスタイルでは役に立たないかもしれません。

右端のメーターは、どれくらい魔法(Magickal)か技術(Technologial)に偏っているかを示すメーター(Magick Tech Meter)です。Spell Colleges(Magickアイコン)を取得すると魔法方向に寄り、Technologial DisciplinesやTechnologial Skill(ギアアイコン)を取得すると技術方向にに寄っていきます。
魔法寄りになるほど、Spellの効果や、Magick Itemを装備や使用した場合の効果が高くなります。しかしながら、技術系アイテムがまともに扱えなくなっていきます。
技術寄りになると、技術系アイテムの効果が上がるというわけではありませんが、Magick Itemの効果が弱くなり、敵と味方のSpellを両方とも弾いてしまうようになります。

このため、Magick Techを両方取得していくというのは難しく、両立したとしても技術系アイテムはかろうじて使えるが、SpellやMagick Itemの効果は大したことがないという、あまり意味のない状態になってしまいます。

関連資料:Manual Chapter 1: Introduction – Arcanum JP Wiki (Manualより訳出、Magick とTechnologialが相容れないことを示す実験)

 

Arcanum-Buy.jpg

最後に旅立つ前にアイテムを購入します。
丸腰なので、好きな武器を一つ買っておいた方がいいでしょう。しかしながら、序盤は矢や弾薬の確保に苦労するため、弓や銃はまだ買わない方がいいでしょう。
魔法使いならば序盤はFatigueが不足しがちなので、Fatigueが回復するポーションを幾つか買ってもいいでしょう。
女性の場合はElegant Dressは必ず買っておきましょう。+20 Reactionは大きいというか、最後まで使えます。

What can help the dialogue of PS:T?

Planescape: Torment Official Website Archived

何故プレイ中に気がつかなかったのだろう。Tormentを遊ぶにあたって、大変有用なページだ。今更。

特に役立つのは二箇所。

FactionsはSigilに存在する主な15のFactionについて説明がされている。ゲーム中での会話で出てくるのはこれら全てではないし、実際に大なり小なり関わってくるFactionとなると、6, 7程度になると思うので、全てが必要になるわけではないが。とりあえずAD&Dの頃の設定のハズなので、最近のPlanescapeに関するドキュメントを読むよりも(特に4eでFactionは無くなったらしいが)、内容が食い違うと言うことはないだろう。Officialなので当然であるが。

The Glossaryは当然ながら用語説明だが、スラングについて説明してくれているのが有り難い。Planescapeで出てくるスラングは、元となったものはあれどPlanescape独自のものなので、ネイティブでも意味を類推しない限り分からないだろう。大抵のことが尋ねられるTormentにおいても、スラングに限ってはWhat’s ~~ mean ?と尋ねられないので、必読といってもいいほどである。

Legacy at Petitcom mkII part.3

PC作れるようにしたり、シート見られるようにしたり、レベルエディタを作りかけていたり。

pmkii_WIP0.jpg

うーん。

pmkii_WIP1.jpg

まだゲームらしい要素は何もなく、下地を作っているにも関わらずコード量が肥大化しているのが懸念事項か。1プログラムあたりの最大行数9999行の既に1/3近くを使ってしまっている。コード以外のデータは極力コード外に追い出すようにしないと間違いなく不足はするだろう。出来るならば、極力スクリプトエンジン化してしまってゲーム進行は全部コード外にしてしまいたいところだが。
あと、マジックナンバーを減らすためにenumのような変数を定義しまくっているのだが、これも結構洒落にならない行数を食っているのでなんとかしたい。その辺のconstantな変数や配列を宣言しまくって初期化したプログラムを分けておいて最初にロード、次に本体プログラムはCLEARせずにロード、とかをやれば比較的まともに解決できそうだが、その辺の切羽詰まったやり方は最大行数に到達したら考えよう。

また、今の段階で既にコードの可読性がやばそうだったので一旦整理。
ラベル分布リストをPC上に作成する(出来れば変数もやりたいのだが、更新が面倒なのでパス)。
検索移動用のラベルを埋め込む。似た処理や続いて呼ばれるサブルーチンの配置をまとめる。更新頻度の低いサブルーチンは下の方に配置する。
変数やラベルの命名規則をガチガチに固めてしまう。グローバルに触られる変数にはprefixをつける。いわゆるローカル変数(呼び出し元や呼び出し先で弄られても影響がない変数)にはアンダースコアをつける。などなど。
プチコンではコピペが1行ずつしかできないので、一旦PC上で作業した方が良いですね。

さて、ぼちぼちと戦闘周りにとりかかっているが、ちょっとエンカウント処理を作ってみて、毎回起動の度にPCを作らんと駄目なのが面倒すぎるなということで、戦闘よりも先にセーブ/ロード周りを作らないと駄目そう。
プチコンのセーブメモリーのMEM$は255文字までなので、PC情報*PC人数+システム情報を詰めなければならないことを考慮すると、ビット単位で詰めていったとしても入りきるかどうかはかなり怪しい。
GRP領域をメモリとして割り当ててしまえば、かなりの量が確保できるが、余計に書き込み読み出しを作る必要があるのと、最終的に利用するセーブデータ量が未だ不明なので、分割して保存することを考える。MEM$なりGRP1個に収まるのならば、後でくっつけてしまえばいいわけで。
LOADは確認ダイアログを省略できるが、SAVEは確認ダイアログが必ず出るので、ダイアログ出まくりでうぜえということになるかどうかは要検証。
やるつもりはないけれど、PCロスト即セーブというのもダイアログが出るので無理なのよね。

Legend of Grimrock part.1

キーストロークに対して敏感というか、予約気味に先行入力として受け付けているのか、押しっぱなしで移動しようとすると、余分に動きすぎて思うように動かない。1セル移動、1/2PI回転を区切りとしてチョンチョンとこまめにキーを押す方が良い感じ。
というか、精密に進むためにチョンチョン押して移動する場合に、ひっかからずにスムーズに移動することが出来るように、先行入力の待ち受け時間を多くとってあるのだろう。

剣HFO、牛斧Fighter、人間氷Mage、蜥蜴短剣Rogueでやってみて、9Fあたり。
Skillに追加ポイントが貰えるTraitsを全員つけて、2分野くらいに絞って伸ばしてみているが50に到達するのはまだまだなあたり、1極化でもしないと50に到達させるのは難しいんじゃないだろうか。

ProtectionよりもEvasionの方が効きがいいのか(前者はDamage Reduction?で、後者は完全回避?)、どちらもバランス良くあるHFOの方が牛よりタフな感じがする。Fighter’s Challengeでも回避しまくりで、食らってもダメージも低めで唯一余裕で生存したのがHFOだけだったという。
一方、level 8のあれではガスが痛いので皆死に。ワープした先の敵の配置で囲まれないかどうか次第でクリアできるかどうかが決まるというのは、運ゲーだと思う。
あと、一発当たりの攻撃力はStrength特化された牛が良いのだが、DPSで見るとどれも対して変わらんような気がする。攻撃を当てると敵はひるむので、Ogreのようになかなかダメージが通らない敵でもなければ、攻撃回数を優先させた方がいいのかもしれない。そうそうOgreは、1セル以上間隔を開けておくと突進してくるので、意図的に狙ってマタドールのように避けて背面攻撃するといいですね。

grimrock-rock.jpg

しかしながら、どう見ても食べるのを躊躇するようなもの(このゲームで言うならば蜘蛛の臓物とか、あの触手とか、スライムの***とか)を、食えと言わんばかりに出されて、嫌々食べなければ飢え死にしてしまうというような状況を当初は期待していたのだが、実際に出てくるのはカタツムリとキノコという現実でも食されているものばかりだったのは残念。
一応ローストしたネズミの足とか、ボイルした虫とか、焼いた蛆とかは出てくるが、調理済みだし。誰が調理したのかは分からないが。

Legacy at Petitcom mkII part.2

え、続けるの?
がっつりと時間が確保できるわけではないのでぼちぼちと。進捗報告的な。

Petitcomkii_WIP.jpg

一人称視点の描き換えのちらつきと遅さは結構解消されて、10フレーム前後でちらつきも無しに。なんとかなりそう。
ただやはり、描き換えるタイルを減らそうと、差分のみ描き換えしようとしたりすると、比較が増えてかえって重たくなるのは変わらないようで。
奥から順に上書きしていっているのを、手前から描くように変更してして稼ぐやり方も、同様の理由から厳しい。これがうまくいくと、もっと軽くなる見込みだし、時折遮蔽されている奥のものが微妙にはみ出していたりするのが防げるのだが。これを諦めて、はみ出ないような絵素材にするしかないのかね。

テスト用の小規模なレベルもなんなので、どこかで見たことがあるようなレベルをちくちくと打ち込んだり。専用のレベルエディタが無いとしんどいことが分かったので、これまた作る必要がありそう。
オートマッピングは多分無しな気がする。
レベルの大きさは通行したかどうかを記録するのならば16×16が効率的で良さそう?

さっさとPCまわりを作ってみたいのだが、それにはまずテキストボックスを作らないと、ということで、チマチマと作る。
文字は横に32文字(枠で2文字分減るので実際は30文字)しかないので、定番のPC一覧表示も情報を切り詰めないと厳しそうだ。
重ねても破綻しないようにしたり、自動改行とか自動サイズ調整など。禁則処理は後回し。選択決定したりする部分も、なるべく汎用的に使い回せるように書いてみる。出来ればタッチ操作でやってしまいたいところだが、面倒なのはもとより、文字サイズが8×8しかないので押しにくかろうということで見送り気味。
ううむ、先は長い。

それはそうと、文字数取得でL=LEN(LINE$(IDX))とかやっていると、時々syntax errorとなるのは何でだろう。全く同じコードで全く同じ文字列を渡しているのに。プチコンmkII本体の未初期化なニオイがする。