2014/01/23

はじめてのPapyrus 初歩の初歩だけ

ヘイムスカーさんがタロスのアミュレットくれる会話を作ってみよう!

スクリプト使えたらいろいろ、できること広がるよ

ダイアログはQuestのなかに入ってます。今回は汎用会話枠に追加してみることに

Branchesに新しい項目を追加しましょう。名前は既存のと被らず、あとで自分が分かりやすいものを。
Topicの名前もつけてあげて、次にInfoのところで右クリック→New→作成。

Responsesを入力して新規会話を作ってあげるのが普通ですが、 今回は共用ダイアログから呼び出してみましょう。
Share Response Data From Infoってところから選びます。実際にどんなのか、どのボイスタイプが対象かなどは右の[...]を押すと参照元が見れます。
というわけで何かくれるときの反応っぽいものを選択。

共用ダイアログはセリフの編集ができない代わりに、自動的にバニラのボイスを呼び出してくれてちゃんとしゃべります。
スカイリムの言語設定が英語だろうと日本語だろうと、適切な場所から引っ張ってきてくれるところがすぐれもの。

セリフの設定ができたら、中央下、End:Papyrus Fragmentの欄に ; (半角セミコロン)とだけ入力してOK、いったん閉じてからもう一度開きます。

 
すると、右下にこんなのが自動的にくっついたと思います。
次はProperties→Add Property

取り扱いたいものの情報をここに登録してあげないと、後でエラーが出ちゃいます。
今回はアミュレットが欲しいので、Type:Armor 名前は適当でいいです。

Edit Valueをクリック。こんなふうに指定してあげて、OK

さっき書いといた";"を削除して、会話にくっつけたいスクリプトを記述します。
プレイヤーにアイテムを追加する場合、こんなかんじ。(item)っていうのはさっきつけてあげたプロパティの名前です。
OK押してウィンドウ閉じて、espを保存しましょう。 文字コードをUTF8に変換するのを忘れずに。化けちゃいます。

ゲーム内で確認すると、ちゃんとヘイムスカーさんからアミュレットがもらえました!
これだと無限にもらえてしまうので、例えばSayOnceにチェック入れて一度だけしか選べないようにするとか、いろいろ

MODとして配布する際は、"\Skyrim\Data\Scripts"に書きだされている.pexファイルも同梱しないと動かないので注意。

書きだしたpexですが、PCのユーザー名が中に書き込まれちゃうという謎のトラップがあるようです。
共用PCとか、本名とか、恥ずかしいおなまえを設定している人は気をつけてね
(参考元→バジリコ風味なBlog:CKでコンパイル済みのスクリプトファイル(*.pex)に関して


→なんかエラー出る!新規追加だけじゃなくてバニラのスクリプトもエラーが出て見れない!
すちむーでCKの(スカイリム本体じゃなくて、CreationKitの)整合性チェックしよう。
\Skyrim\Data\Scripts\Source以下になにやらごちゃごちゃ一万ファイル転がってるのが正しい状態です。

→まだエラー出るよ!
スクリプト書く前にいちいちウィンドウを一旦閉じて、もっかい開いてあげないとプロパティを参照してくれなかったりするみたいで
(参考元→おばちゃんのスカイリムガイド コメント欄

→それでもやっぱりエラー出るんだが…
ModOrganizer経由でCKを起動してるとうまくいかないです。必要なesp・esm(その他使用するファイル、テクスチャとか)だけskyrimフォルダにお引っ越しして、素のCKを起動しよう

1 件のコメント:

narekoneko さんのコメント...

フォロワーMODを制作中です。
会話からアイテムを渡すクエストのスクリプトがうまくコンパイルされず
困っておりましたが、この記事を参考にできました。
分かりやすい記事ありがとうございます!