GOREとにゃんこの桃源郷

主観的にCDのレビューやら、日記やら、色々と。
ゴアとかメタルとかロックとか

Razorマクロの組み方

2010-01-27 | Ultima (ウルティマ)
 初めてUOをプレイする場合、Razorは使わないほうが楽しい。しかし、過去に何度も上げたスキルを、再び一から上げなおすのは一苦労で、この苦しみが楽しみさえ飲み込んでしまいがちだ。おそらくエミュ鯖を選んで遊ぶ限り、現行のUOに不満を持っている人が多いことだろう。ということで、UOエミュの強い味方、Razorで簡単なマクロの組み方を書いてみる。
 ※ ExcelのVBマクロや、RPGツクールにおけるRGSS、プログラミング経験者には、非効率的且つ無益な記事です。ここではあくまで、右も左も解らない初心者を対象にした説明となります。それは、私自身が初心者の域を脱していないためです。

 マクロを組むだけで、ループ実行後、ある程度放置しておくだけで大幅なスキル上昇が見込めるスキルは多い。生産の資材集めは、UO上のマクロオプションから設定して、キーを繰り返し押す。しかし、作成に際しては、ツールの選択をするだけで、後は完全に放置して大丈夫だ。

 <鍛治の場合>
1,バックパックに作成ツール(Tong等)と資材(Ingot)を大量に用意する。
2,Razorを開き、マクロと書かれたタブから新規でマクロを作成する。(名前は何でもいい)
2',UO画面で作成ツールをダブルクリックし、大量生産したい物を1回作る。
3,動作の右にあるRecordをクリックした後、UOの画面を開き、動作を記憶させる。
3',作成ツールをダブルクリックし、ガンプメニュー右下の再作成をクリック。
4,Razorのマクロ設定画面に戻り、記録をSTOPさせる。
この時点で、マクロに記録されているのは上から順に、
Double Click(0x40051・・・) ※作成ツールをクリックした位置です。括弧内の数値は気にせずに。
Wait For Gump(Any) ※作成メニューが開くまで待機させるための命令です。
GumpResponse(Button21) ※そのメニューでクリックした行動です。
Wait For Gump(Any) ※作成メニューが閉じるまで待機させるための命令です。

上記の命令が記載されていればOKだ。括弧内の数字は、私が裁縫ツールで行った時のものなので、無視して構わない。
 これだけの作業で、簡単なマクロが完成した。後は、マクロ設定の右下にあるループという項目にチェックを入れ、カーソルを動作の最初の部分(Double Clickの位置)に置き、PLAYを押すだけだ。ここまでの作業に問題が無ければ、最初に作成したアイテムが、自動で次々に作成されていく。しかも、選択した作成ツールが無くなったり、作成のための資材が尽きた場合(足りなくなった場合)は勝手に停止する。ただし、マクロ自体は実行待機を繰り返すため、ちゃんと停止を押しておく。(PLAYの位置)
 作成ツールが壊れたあとも、更に作成を続けたい場合は、マクロを停止させた後、動作内のDouble Click(0x・・)と記載されている部分を右クリックする。出てきたコマンドの中に、ターゲット再指定というものがあるので、それを選択する。UOの画面に戻ると、ターゲットを選ぶアイコンが出ているはずなので、使用したい作成ツールをクリックする。そして再びPLAYを押せば、先ほどと同じアイテムを、今選択した作成ツールが壊れるか資材が不足するまで自動で作り続ける。
 スキルがある程度まで上昇したため、別のアイテムを作りたい場合、上記は再作成専用のマクロになっているため、一旦マクロを停止させる。そして、自分で一度、次から作りたいアイテムを作成する。あとは特に設定を変える必要もなく、PLAYを押すだけでOKだ。
 このマクロは、鍛治の場合を想定して説明したが、裁縫、書写、大工、錬金術など、作成ツールを用いた生産系ならば全てに応用できる。資材は多いほうが楽なので、STRの高いキャラで用いるのがお薦めだ。

 さて次は、スキル遅延や詠唱時間が発生する、魔法や騎士道などのMagic系スキルを自動上昇させるマクロを組んでみる。

 <魔法の場合>
1,連続使用させたい魔法のアイコンを、呪文書から出しておく。
2,その魔法を唱えるために必要な秘薬を大量に用意する。
3,Razorを開きマクロを新規作成し、Recordを押して記録を開始する。
4,魔法のアイコンをダブルクリックする。(魔法によってはその後ターゲットも選択)
5,記録をSTOPして、CastSpellと書かれた場所で右クリックし、コマンド最下部の"特殊構文"から"Waitを挿入"をクリック。
6,詠唱にかかる時間分のWait(待機)時間をポーズの部分に設定する。(注意※この時間は100分の1秒単位での設定なので、2秒の待機ならば2000と入力。2.25秒なら2250。)
とりあえず、この時点で魔法詠唱がマクロによって自動で繰り返される。動作内容に記載される構文は以下の通り。
CastSpell xxx(#??) ※xxxの部分は唱える魔法の名称、カッコ内の??は魔法番号が入ります。
ポーズ 2.25sec ※2.25秒間待機という意味です。1秒なら1.00secとなります。
Wait For Target ※ターゲットを選択するカーソルが出るのを待ちます。
Absolute Target ※選択したターゲットで、何を選んだかの情報は載りません。

このマクロをPLAYしてみると、順調に魔法が自動詠唱されていくはずだ。しかし、ある時点で、Manaが足りなかったと表示され、マクロが長時間の待機状態に入ってしまうことだろう。そこで、マクロを更に付け足す。上記の内容の下に、記録(Record)ではなく右クリックで動作内に動作を直接付け足してゆく。
7,特殊構文から"Waitを挿入"を選び、魔法の効果が出るための時間をポーズとして入力する。(1秒から数秒、連続実行の際にエラーメッセージが流れない程度。)
8,特殊構文から、"条件分岐(If)を挿入"を選択する。3つの設定項目があるので、左からMana、<=、と選択し、一番右の空欄には魔法使用に必要なMana数を入力する。
9,特殊構文から"Waitを挿入"を選び、その中から"Wait for ・・・"を選択する。ここでも設定項目が3つあるので、左からMana、>=、と選択し、一番右の空欄には魔法使用に必要なMana(またはそれ以上の数値且つ最大Mana数以下)の数を入力する。
これで、マクロの内容は次のように増えたはず。
CastSpell xxx(#??)
ポーズ 2.25sec
Wait For Target
Absolute Target
ポーズ 1.00sec ※1秒だけ待機させます。
If (Mana <= 10) ※Manaが10以下の時という意味です。
Wait for Mana >= 15 ※Manaが15以上になるまで待機させる命令です。

これで魔法の自動詠唱マクロは完成した。あとはループにチェックを入れ、PLAYを押せば実行される。ポーズ時間、マナの数値などは、説明用のものなので、各自で適宜調整が必要だ。
 上記のマクロは次のような動作を繰り返す。xxxの魔法を詠唱し2.25sec後、ターゲットが自動で選ばれ、魔法の成功・失敗に関わらず1秒間だけ待機する。もし、この時点でManaが10以下になっていた場合は、Manaが15まで自然回復するのを待ってから、再び魔法を詠唱する。また、Manaが11以上あるうちは、自然回復のための待機は発生せず(Ifより下の命令は無視して)、再び魔法を詠唱する。
 基本的な魔法のスキル上げマクロはこれで大丈夫なのだが、上記のマクロには魔法の成功判定が無い。呪文の詠唱に成功した場合と失敗した場合とで、動作を変化させたい場合には、先ほども利用した条件分岐(If)を使用する。魔法は、成功した場合にManaを消費するが、失敗した時にはManaの消費が無いので、この特性を利用するのだ。Manaが最大値の状態でマクロを実行するのを想定し、詠唱後に条件分岐でMana<=の設定をする。数値は、Manaの最大値よりも1以上低く、且つ詠唱した魔法の必要Mana数以上の値にする。こうすることで、If以下の動作内容は、魔法が成功した場合にだけ実行される。失敗の場合にも何かの動作をさせたい場合は条件分岐(Else)をIf以下の動作内容の下に設定する。成功した場合の最後には、Manaが最大まで自然回復するためのWaitを入れておくこと。
 また、ターゲットを選択するためのAbsolute Targetも、右クリックからターゲット再指定を選ぶことで、ターゲットを変更することが可能だ。
 ※ペットに魔法を打ち込み続ける場合は、ステイさせてから行うこと。ひとしきり打ち込み終わったら、必ずストップ命令を出してから近付くこと。そうしないと攻撃されてしまったりします。まいったねこりゃどうも、へへへ。

 自動スキル上げ用のマクロは、これくらいの短い命令を設定してやるだけでいい。後は大抵のスキルに応用できるだろう。ついでに自分で設定してあるマクロを少しだけ記載するので、参考にしたい人は参考にされたし。

 <忍術・Shadowjump>
CastSpell Shadowjump(#507)
Wait for Target
Absolute Target ※移動地点を指定します。
ポーズ 2.00sec
CastSpell Shadowjump(#507)
Wait for Target
Absolute Target ※先ほどとは違う移動地点を指定します。
ポーズ 2.00sec

このマクロは、実行前にHidingを使用し、隠れることに成功した後、Stealthを使用し1歩ほど歩いておきます。(ステルス状態でないと使えないという制約がある忍術のため)

 <毒塗り>
UseSkill Poisoning
Wait for Target
Absolute Target ※塗りたい毒を指定します。ポーションまたは樽。
Wait for Target
Absolute Target ※毒を塗りたい武器を指定します。
ポーズ 10.00sec
If (Poisoned) ※毒塗りを失敗して毒に冒された場合の処理です。
Double Click (0x400・・・) ※包帯を指定しています。
Wait for Target
Exec: TargetSelf ※包帯を巻く対象として自身を指定しました。
ポーズ 3.00sec ※治療に必要な時間です。

毒塗りはスキル遅延が10秒もあるため、100回分の毒塗りも結構な時間がかかります。ということは、放置する時間も必然的に長くなるため、解毒手段は確実なものを選択しましょう。私の場合は包帯で確実な解毒が出来るため、包帯の使用を組み込んでいますが、解毒魔法のほうが確実な場合は、解毒魔法にすると良いでしょう。ただし、念のため50回分以上の秘薬は持っておくと安心だと思います。


最新の画像もっと見る

2 コメント

コメント日が  古い順  |   新しい順
Unknown (Unknown)
2015-09-17 08:39:06
さいたまオフラインを始めたのですが
この記事がとても分かりやすく参考になりました。
どうもありがとうございました。
返信する
>>Unknown (GCC)
2015-09-18 21:03:04
こちらこそ、役立てて頂き
ありがとうございます。
書いた甲斐がありました。
返信する

コメントを投稿