SEGA PC LOCALIZED GAME OFFICIAL SITE のトップページへ
NewsBBSNeverwinterNightsBaldursGate2BaldursGateIcewindDalePlanescapeTorment


ネヴァーウィンター・ナイツ日本語版 サポートページ
for Builders




チュートリアル: カットシーンを演出する 

はじめに : 

拡張キット第1弾『シャドウ・オブ・アンドレンタイド』ではNWスクリプトも大幅に強化され、シナリオに様々な場面を演出できるようになりました。

ここでは、強化されたスクリプトの一例として、カットシーンの作成を行います。

なお、このチュートリアルは新機能を必要としますので、事前に拡張キット『シャドウ・オブ・アンドレンタイド』をインストールするか、「ネヴァーウィンター・ナイツ日本語版」本編をバージョン1.62以降にアップデートしておく必要があります。


目標 : 

PCがあるエリアに進入すると、画面がフェードアウトし、プレイヤーとは違う視点となり、シナリオを別の視点から覗くような演出を加えてみましょう。


チュートリアル : 
・カットシーンとは?
NWスクリプトで演出するカットシーンの原理
・シチュエーションを決めよう
・カットシーンの舞台の作成
・カメラがたどる足取りを決めよう
・カットシーンスクリプト
・カットシーンスクリプトの解説
・モジュールを実行してみよう!
・「カットシーンサンプル」をダウンロードしてみよう!



カットシーンとは?

ここでいう「カットシーン」とは、通常の冒険中に別の場面の様子が挿入されるシーンの事を指しています。 つまりは「カットイン」「カットアウト」を行うシーンのことです。

拡張キット「シャドウ・オブ・アンドレンタイド」序盤の1コマ

コボルトたちを相手に奮闘するドローガン。その闘いの行方は…?

カットシーンを利用することで、ゲーム内のキャラクターの知り得ない事柄をプレイヤーに伝えたり、キャラクターが見たり聞いたりしたものをより具体的にプレイヤーに観せ、シナリオの補足や物語に関するプレイヤーの理解を促すことができます。

拡張キット第1弾『シャドウ・オブ・アンドレンタイド』でも、カットシーンは様々な場面に使用され、奪われたアーティファクトと古代都市の謎をめぐる物語を盛り上げています。






NWスクリプトで演出するカットシーンの原理

ネヴァーウィンター・ナイツでは基本的にプレイヤーのPC(以下、「主人公」とします)を中心に視点(ゲーム画面)が移動します。 つまり必ず、画面の中心には主人公がいることになります。

このままでは、主人公の視点から離れ、別の場所で展開している物語を挿入する、といったカットシーンの表現を行うことができません。

ですので、主人公を透明かつ無敵状態に設定して、その状態で歩き回らせることで、主人公の視点を離れた誰のものでもない視点が移動していく様を表現します。

カットシーン中にプレイヤーが画面をクリックすると、行動がキャンセルされてしまったりして上手く処理が完了されない、といったことが発生する可能性がありますので、カットシーン向けに用意された関数を使用し、ユーザーインターフェイスを消去しておきます。 (プレイヤーの操作を受け付けないモードに設定します)




画面中央に位置する主人公を透明状態にし、さらにユーザーインターフェースを消去することで、擬似的に主人公の視点を離れ別の視点から物語を覗くような効果を演出します。


実際のカットシーン処理の流れは大きく分けて、カットシーン開始(カットイン)カットシーン内の処理カットシーン終了(カットアウト)の3つに分けられます。

それぞれの処理の内訳は、次のようになります。

カットシーン開始
[ユーザーインターフェイスを消去][画面をフェードアウト][PCを透明状態に変更][PC(カメラ)を移動]
カットシーン内の処理
[画面をフェードイン](カットシーン開始:カットシーンの処理)
カットシーン終了
(カットシーン完了)「画面をフェードアウト」「PC(カメラ)を元の位置に移動」「PCの透明状態を解除」「ユーザーインターフェイスを表示」「画面をフェードイン」

以上のことを踏まえながら、実際にカットシーンを使用したモジュールを作成してみましょう。






シチュエーションを決めよう

まず、カットシーンで演出する場面のシチュエーションを決定しましょう。

とあるダンジョンを探索していた主人公の目の前に思わせぶりな部屋が…。 その扉の前に行くと、その奥から話し声が聞こえてきます。

部屋の奥では、囚われの身の冒険者を前にしてオークたちがなにやら物騒な話をしているようです。

そこでプレイヤーはどのような行動をとるのか…?



「奥から話し声が聞こえる…」

練習ですので、比較的単純なシチュエーションを用意してみました。

ダンジョン内の部屋の前を主人公が通りかかると、画面がカットシーンに切り替わり、オークたちの会話が始まります。

部屋の中では、オークの隊長が「はやくしろ!」と配下のオークたちを怒鳴り、オークたちの視線の先には囚われの冒険者「ハンス」の姿が…。

窮地に立たされた冒険者「ハンス」の様子を見せ、彼を『見捨てる』か『助ける』のか、そして『助ける』のなら『正面から救出する』のか『別の手を考える』か…など、プレイヤーにいろいろと考えさせるように仕向けるわけです。

様々なプレイヤーたちの柔軟な発想に対応するのは大変ですが、いろいろな仕掛けを事前に用意しておいたり、DMクライアントを使用してDMとしてゲームに参加することで、実現できるでしょう。

今回は、そこまで肩に力を入れず、カットシーンを実現する事だけに注目してモジュールを作成していきましょう。






カットシーンの舞台の作成



(1)

タイルセット「地下墓地」を使って、簡単なダンジョン内の部屋を作成していきましょう。 (※練習ですので、簡単なものを作成しましょう)

部屋の中には、オークたちや焚き火、そして囚われの冒険者「ハンス」を配置しましょう。





後でスクリプトの中からオークたちやハンスを操作できるように各オブジェクトのタグ設定を行っておきます。  ここでは、ハンスは"hans_001"、オークの隊長は"Orc_le_001"、オークたちは"orc_001""orc_003" とします。


カットシーンの中でハンスやオークたちが、透明化した主人公を襲わないようにファクションを作成・設定しておきましょう。  ファクションについては、【ツールセット チュートリアル】5 ファクション:キャラクターの一般的な態度をご覧ください。




カンバセーション・エディタの使い方については、【ツールセット入門編】8.人々との交流、及び、【ツールセット チュートリアル】6 日記と会話をご覧ください。
(2)

囚われの冒険者「ハンス」を救出した場合のセリフを入力しておきましょう。

「ハンス」を選択した状態で右クリックして[会話]を選択してカンバセーション・エディタを起動し、セリフを入力します。

セリフは、

助けに来たのか? ありがとう!

と、しておきます。






トリガーを踏まずには通路を通る事ができないように、トリガーの範囲を設定しましょう。
(3)

スタート地点とカットシーンのスクリプトを開始させるトリガーを設置します。

この段階では、まだトリガーには何も設定しないでおきましょう。







カメラがたどる足取りを決めよう



(1)

カメラ(視点)がたどる地点にウェイポイントを設置していきます。 このように設置したウェイポイントを透明化したキャラクターに辿らせることで、視点を自由に動かすことができるわけです。

まず始めにカットシーンの開始時のカメラ位置を決め、次にオークたちの周りを回るようにカメラ位置を3箇所、最後にハンスの目の前に止まるカメラ位置としてウェイポイントを設定しましょう。




(2)

設置した各ウェイポイントにタグ名を設定しましょう。

カットシーンの始まりを"wp_start"として、以下、"wp_001""wp_002""wp_003"とし、最後のウェイポイントを"wp_return"とします。







カットシーンスクリプト

ここまででカットシーンのための準備は、ほぼ整いました。 ここからは、いよいよスクリプトを使用してカットシーンを演出していきましょう。

カットシーンが始まるまでの手順はNWスクリプトで演出するカットシーンの原理」で紹介したように、大雑把に分けると3つあります。

1. カットシーン開始
[ユーザーインターフェイスを消去][画面をフェードアウト][PCを透明状態に変更][PC(カメラ)を移動]
2. カットシーン内の処理
[画面をフェードイン](カットシーン開始:カットシーンの処理)
3. カットシーン終了
(カットシーン完了)「画面をフェードアウト」「PC(カメラ)を元の位置に移動」「PCの透明状態を解除」「ユーザーインターフェイスを表示」「画面をフェードイン」

細かい解説は後にして、カットシーンのサンプルスクリプトを以下に示します。

使用されている関数の使い方・仕様については、「関数の解説」、及び スクリプトエディタのヘルプをご覧ください。


1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
128:
129:
130:
131:
132:
133:
134:
135:
136:
137:
138:
139:
140:
141:
142:
143:
144:
145:
146:
147:
148:
149:
150:
151:
152:
153:
154:
155:
156:
157:
158:
159:
160:

//----カットシーンサンプルスクリプト---- //拡張システム関数を読み込み、カットシーン用の関数を利用できるようにします //(SoU/v162以降のみ) #include "x1_inc_cutscene" //カットシーンで使用するセリフを設定します string sNarrTalk = "奥から話し声が聞こえる…"; string sOrcTalk1 = "何してやがる、早くしろ!"; string sOrcTalk2 = "すいません、すぐやります!"; string sOrcTalk3 = "うまそうだもんな…"; string sHansTalk = "誰か… このままじゃ食べられちまう…"; //スクリプトで使用するオブジェクトを取得しておきます object oPlayers; object oPC = GetEnteringObject(); object oHans = GetObjectByTag("hans_001"); object oOrc_le = GetObjectByTag("Orc_le_001"); object oOrc_01 = GetObjectByTag("orc_001"); object oOrc_02 = GetObjectByTag("orc_002"); object oOrc_03 = GetObjectByTag("orc_003"); //カメラ(視点)を移動させる座標をウェイポイントから取得しておきます location lStart = GetLocation(GetWaypointByTag("wp_start")); location lCutP01 = GetLocation(GetWaypointByTag("wp_cut1")); location lCutP02 = GetLocation(GetWaypointByTag("wp_cut2")); location lCutP03 = GetLocation(GetWaypointByTag("wp_cut3")); location lPC_return = GetLocation(GetWaypointByTag("wp_return")); //効果定数を変数に代入しておきます(記述短縮のため) effect eInv = EffectVisualEffect(VFX_DUR_CUTSCENE_INVISIBILITY); //カットシーンの番号を定義します int nCutsceneNumber = 1; //オリジナル関数のプロトタイプ宣言 void StartCutscene(); void Cutscene001(); void ReturnPlayers(); //メイン関数(ここからスクリプトの処理が始まります) void main() { StartCutscene(); //3.2秒後にCutscene001()を実行します DelayCommand(3.2, Cutscene001()); //33.2秒後にReturnPlayers()を実行します DelayCommand(33.2, ReturnPlayers()); } //ここでは、画面をフェードアウトさせてカットシーンを開始する準備を行います void StartCutscene() { //PCの全ての動きを停止させます AssignCommand(oPC, ClearAllActions()); //カットシーンモードを有効にしてユーザーインターフェースを消去します ActionDoCommand(SetCutsceneMode(oPC, TRUE)); //実行するカットシーン番号を指定します SetLocalInt(oPC, "nCutsceneNumber", 1); //ナレーション(PCのセリフ)を表示します FloatingTextStringOnCreature(sNarrTalk, oPC); //PCの動作を3.5秒静止します AssignCommand(oPC, ActionWait(3.5)); //1.5秒後に画面をフェードアウトさせます DelayCommand(1.5, ActionDoCommand(FadeToBlack(oPC, FADE_SPEED_FAST))); //3.0秒後にPCを透明状態にします DelayCommand(3.0, ApplyEffectToObject(DURATION_TYPE_PERMANENT, eInv, oPC)); //PC(カメラ)を"lStart"地点に移動させます CutJumpToLocation(nCutsceneNumber, 3.1, oPC, lStart); } //この関数では、何を行うか(カットシーンの中身)を記述します void Cutscene001() { //カメラの角度をセットします CutSetCamera(nCutsceneNumber, 0.0, oPC, CAMERA_MODE_TOP_DOWN, 110.0, 8.0, 50.0, CAMERA_TRANSITION_TYPE_SNAP); //画面をフェードインし、表示を回復させます CutFadeFromBlack(nCutsceneNumber, 1.0, oPC); //オークの隊長をアニメーションさせ、セリフをしゃべらせます CutPlayAnimation(nCutsceneNumber, 3.5, oOrc_le, ANIMATION_FIREFORGET_TAUNT, 3.0); CutSpeakString(nCutsceneNumber, 3.7, oOrc_le, sOrcTalk1); //カメラを"lCutP01"地点に移動させます CutActionMoveToLocation(nCutsceneNumber, 5.0, oPC, lCutP01, FALSE); //オークたちをオークの隊長の方へ時間差で向き直らせます CutSetFacingPoint(nCutsceneNumber, 6.8, oOrc_01, "Orc_le_001"); CutSetFacingPoint(nCutsceneNumber, 7.0, oOrc_02, "Orc_le_001"); CutSetFacingPoint(nCutsceneNumber, 7.2, oOrc_03, "Orc_le_001"); //カメラの角度を変更します CutSetCamera(nCutsceneNumber, 8.0, oPC, CAMERA_MODE_TOP_DOWN, 190.0, 8.0, 50.0, CAMERA_TRANSITION_TYPE_FAST); //オークに時間差でお辞儀をさせます CutPlayAnimation(nCutsceneNumber, 9.5, oOrc_01, ANIMATION_FIREFORGET_BOW, 1.0); CutPlayAnimation(nCutsceneNumber, 10.0, oOrc_02, ANIMATION_FIREFORGET_BOW, 1.0); CutPlayAnimation(nCutsceneNumber, 10.5, oOrc_03, ANIMATION_FIREFORGET_BOW, 1.0); //オークにセリフをしゃべらせます CutSpeakString(nCutsceneNumber, 10.8, oOrc_01, sOrcTalk2); //カメラを"lCutP02"地点に移動させます CutActionMoveToLocation(nCutsceneNumber, 12.0, oPC, lCutP02, FALSE); //カメラの角度を変更します CutSetCamera(nCutsceneNumber, 13.0, oPC, CAMERA_MODE_TOP_DOWN, 290.0, 10.0, 40.0, CAMERA_TRANSITION_TYPE_FAST); //オークたちを囚われのハンスの方へ時間差で向き直らせます CutSetFacingPoint(nCutsceneNumber, 14.0, oOrc_01, "hans_001"); CutSetFacingPoint(nCutsceneNumber, 14.5, oOrc_02, "hans_001"); CutSetFacingPoint(nCutsceneNumber, 15.0, oOrc_03, "hans_001"); //オークにセリフをしゃべらせます CutSpeakString(nCutsceneNumber, 18.0, oOrc_03, sOrcTalk3); //カメラの角度を変更します CutSetCamera(nCutsceneNumber, 19.0, oPC,CAMERA_MODE_TOP_DOWN, 180.0, 10.0, 40.0, CAMERA_TRANSITION_TYPE_FAST); //カメラを"lCutP03"地点に移動させます CutActionMoveToLocation(nCutsceneNumber, 20.0, oPC, lCutP03, FALSE); //カメラの角度を変更します CutSetCamera(nCutsceneNumber, 23.0, oPC, CAMERA_MODE_TOP_DOWN, 180.0, 5.0, 50.0, CAMERA_TRANSITION_TYPE_MEDIUM); //ハンスにセリフをしゃべらせます CutSpeakString(nCutsceneNumber, 26.5, oHans, sHansTalk); //ハンスに床に座り込むアニメーションをさせます CutPlayAnimation(nCutsceneNumber, 27.0, oHans, ANIMATION_LOOPING_SIT_CROSS, 3.0); } //この関数では、カットシーンから通常の状態に戻す処理を行います void ReturnPlayers() { //PCの全ての動きを停止させます AssignCommand(oPC, ClearAllActions()); //画面をフェードアウトさせます AssignCommand(oPC, ActionDoCommand(FadeToBlack(oPC, FADE_SPEED_FAST))); //PCの動作を2.0秒静止します AssignCommand(oPC, ActionWait(2.0)); //カメラを"lPC_return"地点に移動させます AssignCommand(oPC,ActionJumpToLocation(lPC_return)); //PCの透明状態を解除する CutRemoveEffects(nCutsceneNumber, 1.0, oPC); //カットシーンモードを解除(無効に)する CutSetCutsceneMode(nCutsceneNumber, 2.0, oPC, FALSE); //画面をフェードインして表示を回復します DelayCommand(3.0,ActionDoCommand(FadeFromBlack(oPC, FADE_SPEED_MEDIUM))); }




カットシーンスクリプトの解説

8〜12行目

カットシーンで各キャラクターが話すセリフをまとめて設定しておきます。

「スクリプト・エディタ」では、仕様上、日本語文字(全角文字)は文字化けを起こしてしまいますが動作に問題ありません。 入力は「メモ帳」などに入力したものをコピー&ペーストしてください。

【ツールセット チュートリアル】9 スクリプトのように別の場所に設定したセリフを話すようにすることもできます。 これについては各自挑戦してみてください。



56〜74行目 StartCutscene関数

ここでは、カットシーンを始めるための準備を行います。

つまり、ユーザーインターフェイスを消去し、ナレーションを表示、そして新たな場面に視点(主人公)を移動しても違和感が無いように、画面をフェードアウトし、主人公を透明状態に変更します。

NWスクリプトの注意点として、NWスクリプトは実行した関数の完了を待たずに次の処理に移るため、処理を普通に書き並べるだけではその全てがほぼ同時に開始されてしまう、という点があります。

ある程度時間を置いて次の処理に移りたい場合は、DelayCommand関数を使用し、処理の開始を遅延させます。 この際に指定する時間は、「その処理を行う関数が開始された」時からの秒数であることに注意しましょう。 (DelayCommand(1.5, ActionDoCommand(FadeToBlack(oPC, FADE_SPEED_FAST)));」の解説

全てのDelayCommand関数に5秒を指定した場合、5秒毎に次の処理が開始されるのではなく、5秒後に全ての処理が開始されてしまいます。 5秒毎に処理を開始させる場合は、5秒、10秒、15秒、と指定する秒数を5秒毎増やしていきます。



78〜139行目 Cutscene001関数

ここでは、カットシーン内で行う処理を記述します。

まず、カメラ(PC)をカットシーン開始位置に移動させた後、画面をフェードインし表示を回復させ、カットシーン開始の処理を行います。(81〜85行目

次は、カットシーン内のキャラクターの会話や動作など、カットシーンの中身の記述となります。 今回は『オークたちの会話とその会話を聞いたハンスの嘆きをカメラを移動させながら眺めていく』シーンを作成します。

先程カットシーンの準備を行う際には、DelayCommand関数を使用して、各処理の開始時間をずらしましたが、カットシーン内の処理については CutJumpToLocation関数やCutPlayAnimation関数などの「Cut〜」で始まる名前の関数を使用することにしましょう。  これらの関数は、第2パラメータに指定した時間(秒)経過後、処理を実行します。

Cut〜」で始まる名前の関数は、第1パラメータにカットシーン番号(nCutsceneNumber)、第2パラメータに遅延時間(fDelay)、第3パラメータに対象オブジェクト(oObject)を指定する点が共通しています。 さらに後に続くパラメータの並び方もほぼ同じ並びになっており、時間の見通しが良いのが特徴です。

Cut〜」で始まる名前の関数は、スクリプトの先頭にある「#include "x1_inc_cutscene"」の記述を追加することで使用可能となります。 各関数の使い方(仕様)はこちらやスクリプト・エディタのヘルプをご参照ください。



143〜159行目 ReturnPlayers関数

ここでは、カットシーンの終了するための記述を行います。

カットシーン開始の準備を行ったときと同じように、まず、画面をフェードアウトします。 あとは、主人公の透明状態を解除、カットシーン終了位置への移動、ユーザーインターフェイスの復元(表示)を行い最後に画面をフェードインして、元の画面に戻します。






モジュールを実行してみよう!


ちょっとその前に

スクリプトを一通り眺めたところで、さっそくモジュールの実行を行いたいところですが、このままではスクリプトが実行されません。 トリガーのイベントにスクリプトを指定して、スクリプトが実行されるように設定しましょう。

まず、上記のスクリプトを"cut_start_001"という名前で保存します。  次に部屋の前の通路に設置したトリガーのプロパティを開き、「スクリプト」項の「OnEnter」イベントに"cut_start_001"を指定します。

これでトリガー領域に主人公が進入すると"cut_start_001"スクリプトが実行されるように、つまり、カットシーンがはじまるようになります。  モジュールに名前をつけて保存し、一度「オーロラ・ツールセット」を終了しましょう。


それでは、作成したモジュールを実行してみましょう。

『ネヴァーウィンター・ナイツ 日本語版』を起動して、[新規]→[その他のモジュール]と選択していき、作成したモジュールを選択してゲームを開始します。



1. カットシーン開始。
「奥から話し声が聞こえる…」

2. 部屋の中に視点が移動します。
部屋の中ではオークの隊長が部下たちを怒鳴りつけています。


3. 「すいません。すぐやります!」
オークたちの周りに視点を移しながら、カットシーンは進行していきます。

4. 「うまそうだもんな…」
部下の一人が何かを見つめながら呟きます。


5. その視線の先には囚われた「ハンス」の姿が。
「誰か… このままじゃ食べられちまう…」

6. 視点が主人公に戻り、
カットシーンは終了します。

視点の動きやアニメーションタイミングを思い描いた通り指定するのは、はじめはなかなか難しいですが、それぞれの時間や場所を図示するなどして整理しておくことで、指定や調整が行いやすくなります。

このモジュールはひとまず終了ですが、せっかくですので「ハンス」を救出してみましょう。



ドアを強行突破!
ハンスを正面から救い出します。

オークの隊長を倒してしまいましょう!


オークたちを倒してしまえば、
「ハンス」の救出は完了です。

通路の端にあるレバーを引くとモジュールが
リセットされ、倒したオークたちが復活します。

オークたちのファクションは「カットシーンの舞台の作成」で主人公を襲わないように設定していますので、そのままでは部屋の中に入っても襲い掛かってきません。

上の「ハンス救出」では、ドアを開けると(破壊すると)、オークたちが主人公に襲い掛かってきていますが、上記のようなことを実現するには、ドアが開けられたとき、またはドアが破壊されたときに、オークたちのファクションを主人公に対して敵対関係に変化させるスクリプトを実行します。

このスクリプトは、当ページ下でダウンロードできるサンプルモジュールに「orcattack」という名前で入っていますので、どのような処理を行うのか興味がある方はご覧ください。 (なお、スクリプトはドアの「OnDeath」イベントと「OnOpen」イベントの際に実行するように指定します)






「カットシーンサンプル」をダウンロードしてみよう!

今回の「チュートリアル: カットシーンを演出する」で作成したモジュールのサンプルをこちらからダウンロードできます。

かなり駆け足でカットシーンについて紹介してきましたので、イマイチよくわからなかった方もいらっしゃると思います。 そんな方は、こちらからモジュール「カットシーンサンプル」をダウンロードしていただき、オーロラ・ツールセットで実際に確認してみてください。

チュートリアルで作成するモジュールは、必ずしもこのページからダウンロードできるサンプルのようになっている必要はありません。 いろいろ試してみて自由にモジュールを作成するための練習に使ってみてください。



   ご注意

ファイルの運用・セットアップによって起こる全てのトラブルに対して、弊社は責任を負いません。あらかじめご了承の上、自己責任のもとでファイルのセットアップをおこなってください。

このモジュールは、バージョン1.62で作成したモジュールですので、お使いの『ネヴァーウィンター・ナイツ 日本語版』をバージョン1.62以降にアップデートしておく必要があります。 バージョンが1.62未満の方は、「アップデート」をご覧になり、バージョン1.62にアップデートしてからご利用ください。 (バージョンは、オートランランチャーの左上に表示されています)


ダウンロード & 使用方法

(1) 
下記のファイル名をクリックして、ファイルのダウンロードを行ってください。
(ファイルの保存先はどこでも構いません。デスクトップなど操作しやすい場所に保存することをお勧めいたします)

(2) 
ファイルのダウンロードが完了しましたら、「nwn_mod_cutscene_sample.exe」をダブルクリック(実行)します。

(3) 
『モジュール「カットシーンサンプル」をインストールしますか?』とダイアログウィンドウが表示されますのでよろしければ[はい(Y)]ボタンをクリックします。

(4) 
1 file was successfully installed.』と表示されれば、モジュール「カットシーンサンプル」のインストールは完了です。

ダウンロード
※バージョン1.62で作成したモジュールです





SEGA PC LOCALIZED GAME OFFICIAL SITE トップページへ
ネヴァーウィンター・ナイツ日本語版 サポートページ:トップへ ■

ネヴァーウィンター・ナイツ日本語版:紹介ページへ ■

SEGA PC LOCALIZED GAME OFFICIAL SITE トップページへ ■