「クエスト」の編集履歴(バックアップ)一覧はこちら
「クエスト」(2010/07/02 (金) 01:22:41) の最新版変更点
追加された行は緑色になります。
削除された行は赤色になります。
*クエスト
> 全体的な注意:
> メッセージ中の改行は<br>ではなく\rです。
***$QUEST{__}
クエストを請け負う際に関わるパラメータです。
**$QUEST{nm}
クエストの名称です。
**$QUEST{loop}
繰り返し請けられるかどうか。
1を指定すると繰り返し請けることができます。
**$QUEST{info}
クエストを選択した時に,小窓に表示される説明です。
**@{$QUEST{need}}
請ける時の条件です。パラメータ2~3つのリストで1項目になります。
以下の2つの記述方式があります。
|パラメータ|内容|
|0|param|
|1|参照したいデータ($PLAY->{[1]}を参照します)|
|2|データの値が[2]以上で請負可能|
> 例(sample.cgiより):
> @{$QUEST{need}}=(
> ['param','def',22],
> );
> ※$PLAY->{def}(防御)が22以上なら請負可能。
|パラメータ|内容|
|0|quest|
|1|クエストコード[1]をクリアで請負可能|
> 例(sample2.cgiより):
> @{$QUEST{need}}=(
> ['quest','morizo'],
> ・・・
> );
> ※クエストコード『morizo』をクリアしていれば請負可能。
***$STAGE[N]{__}
クエストの進行に関わるパラメータです。
Nはクエストの進行度です。0から順に指定します。
**$STAGE[N]{place}
クエストが進行する場所を指定します。(エリア:アドレス)
**@{$STAGE[N]{field}}
フィールドマップの場合,フィールド上のどの座標に行くと進行するかを指定できます。
座標は中心を0,0としてそれぞれ-2~2の間で指定します。
> 例(sample.cgiより):
> @{$STAGE[1]{field}}=(
> 1,1,''
> );
> ※$STAGE[N]{place}の中心から北に1歩,東に1歩の地点に
> プレイヤーが移動するとクエストが進行する(判定を行う)。
> クエストが進行するとキャラクターは中心位置に移動する模様。
**$STAGE[N]{npc}
クエスト進行時に表示される小窓の発言者名です。
(ナレーションであれば『---』などを指定しておくと良いでしょう)
**$STAGE[N]{msg}
クエスト進行時に表示される小窓の内容です。
**@{$STAGE[N]{need}}
クエスト進行に必要なアイテムです。パラメータ3つのリストで1項目になります。
|パラメータ|内容|
|0|アイテムコード|
|1|必要数|
|2|消費確率|
> 例(sample.cgiより):
> @{$STAGE[3]{need}}=(
> ['stone',2,100],
> );
> ※stoneを2個持ってくると,(100%の確率で)消費してクエストが進行する。
**@{$STAGE[N]{result}}
クエスト進行時に得られる報酬です。パラメータ3つのリストで1項目になります。
以下の3つの記述方式があります。
|パラメータ|内容|
|0|アイテムコード|
|1|獲得数|
|2|獲得確率|
> 例(sample.cgiより):
> @{$STAGE[2]{result}}=(
> ['bkcoll',1,100],
> );
> ※クエストが進行すると,bkcollを(100%の確率で)獲得する。
|パラメータ|内容|
|0|skillexp|
|1|アイテムコード|
|2|獲得熟練度%(10倍の値を指定)|
> 例(sample2.cgiより改変):
> @{$STAGE[6]{result}}=(
> ['skillexp','bkart',100],
> );
> ※クエストが進行すると,bkartの熟練度を10%獲得する。
|パラメータ|内容|
|0|money|
|1|獲得金額|
|2|獲得確率|
> 例(sample.cgiより):
> @{$STAGE[3]{result}}=(
> ['money',50,100],
> );
> ※クエストが進行すると,お金を(100%の確率で)50獲得する。
***Tips
**クエスト中のみ行けるマップを作るには
> if ($PLAY->{stage}==[N] &&
> $PLAY->{area}.":".$PLAY->{adr} eq "[マップコードA]") {
> $ADR->{field}[[方向]]="{[マップコードB]";
> }
> ※進行度が[N]の時,[マップコードA]の[方向]から
> [マップコードB]に行くことができる。
> マップコードAはエリア:アドレスを,
> マップコードBはアドレスもしくはエリア:アドレスを指定する。
**クエスト中のみ出現するNPCを作るには
> if ($PLAY->{stage}==[N] &&
> $PLAY->{area}.":".$PLAY->{adr} eq "[マップコード]") {
> @{$ADR->{chara}}=(
> '[コード]','[名前]','[座標A]','[座標B]',"[台詞]"
> );
> }
> ※進行度が[N]の時,[マップコード]の[座標A],[座標B]に
> [台詞]をしゃべる[名前](画像コード[コード])が出現する。
> 1MAPにオブジェクトは1つしかおけないので,元々そのMAPにいたNPCは
> 進行度[N]の間は出現しない。
**特定の位置で出現するクエストMobを作るには
> @{$STAGE[[N]]{field}}=(
> [座標A],[座標B],'[モンスターコード]'
> );
> ※進行度が[N]の時,
> $STAGE[[N]]{place}の中心から北に[座標A]歩,東に[座標B]歩の地点に
> [モンスターコード]のモンスターが出現,戦闘になる。
> 末尾の『1;』は消さないようにしてください。
*クエスト
> 全体的な注意:
> メッセージ中の改行は<br>ではなく\rです。
***$QUEST{__}
クエストを請け負う際に関わるパラメータです。
**$QUEST{nm}
クエストの名称です。
**$QUEST{loop}
繰り返し請けられるかどうか。
1を指定すると繰り返し請けることができます。
**$QUEST{info}
クエストを選択した時に,小窓に表示される説明です。
**@{$QUEST{need}}
請ける時の条件です。パラメータ2~3つのリストで1項目になります。
以下の2つの記述方式があります。
|パラメータ|内容|
|0|param|
|1|参照したいデータ($PLAY->{[1]}を参照します)|
|2|データの値が[2]以上で請負可能|
> 例(sample.cgiより):
> @{$QUEST{need}}=(
> ['param','def',22],
> );
> ※$PLAY->{def}(防御)が22以上なら請負可能。
|パラメータ|内容|
|0|quest|
|1|クエストコード[1]をクリアで請負可能|
> 例(sample2.cgiより):
> @{$QUEST{need}}=(
> ['quest','morizo'],
> ・・・
> );
> ※クエストコード『morizo』をクリアしていれば請負可能。
***$STAGE[N]{__}
クエストの進行に関わるパラメータです。
Nはクエストの進行度です。0から順に指定します。
**$STAGE[N]{place}
クエストが進行する場所を指定します。(エリア:アドレス)
**@{$STAGE[N]{field}}
フィールドマップの場合,フィールド上のどの座標に行くと進行するかを指定できます。
座標は中心を0,0としてそれぞれ-2~2の間で指定します。
> 例(sample.cgiより):
> @{$STAGE[1]{field}}=(
> 1,1,''
> );
> ※$STAGE[N]{place}の中心から北に1歩,東に1歩の地点に
> プレイヤーが移動するとクエストが進行する(判定を行う)。
> クエストが進行するとキャラクターは中心位置に移動する模様。
**$STAGE[N]{npc}
クエスト進行時に表示される小窓の発言者名です。
(ナレーションであれば『---』などを指定しておくと良いでしょう)
**$STAGE[N]{msg}
クエスト進行時に表示される小窓の内容です。
**@{$STAGE[N]{need}}
クエスト進行に必要なアイテムです。パラメータ3つのリストで1項目になります。
|パラメータ|内容|
|0|アイテムコード|
|1|必要数|
|2|消費確率|
> 例(sample.cgiより):
> @{$STAGE[3]{need}}=(
> ['stone',2,100],
> );
> ※stoneを2個持ってくると,(100%の確率で)消費してクエストが進行する。
**@{$STAGE[N]{result}}
クエスト進行時に得られる報酬です。パラメータ3つのリストで1項目になります。
以下の3つの記述方式があります。
|パラメータ|内容|
|0|アイテムコード|
|1|獲得数|
|2|獲得確率|
> 例(sample.cgiより):
> @{$STAGE[2]{result}}=(
> ['bkcoll',1,100],
> );
> ※クエストが進行すると,bkcollを(100%の確率で)獲得する。
|パラメータ|内容|
|0|skillexp|
|1|アイテムコード|
|2|獲得熟練度%(10倍の値を指定)|
> 例(sample2.cgiより改変):
> @{$STAGE[6]{result}}=(
> ['skillexp','bkart',100],
> );
> ※クエストが進行すると,bkartの熟練度を10%獲得する。
|パラメータ|内容|
|0|money|
|1|獲得金額|
|2|獲得確率|
> 例(sample.cgiより):
> @{$STAGE[3]{result}}=(
> ['money',50,100],
> );
> ※クエストが進行すると,お金を(100%の確率で)50獲得する。
***Tips
**クエスト中のみ行けるマップを作るには
> if ($PLAY->{stage}==[N] &&
> $PLAY->{area}.":".$PLAY->{adr} eq "[マップコードA]") {
> $ADR->{field}[[方向]]="{[マップコードB]";
> }
> ※進行度が[N]の時,[マップコードA]の[方向]から
> [マップコードB]に行くことができる。
> マップコードAはエリア:アドレスを,
> マップコードBはアドレスもしくはエリア:アドレスを指定する。
**クエスト中のみ出現するNPCを作るには
> if ($PLAY->{stage}==[N] &&
> $PLAY->{area}.":".$PLAY->{adr} eq "[マップコード]") {
> @{$ADR->{chara}}=(
> '[コード]','[名前]','[座標A]','[座標B]',"[台詞]"
> );
> }
> ※進行度が[N]の時,[マップコード]の[座標A],[座標B]に
> [台詞]をしゃべる[名前](画像コード[コード])が出現する。
> 1MAPにオブジェクトは1つしかおけないので,元々そのMAPにいたNPCは
> 進行度[N]の間は出現しない。
**特定の位置で出現するクエストMobを作るには
> @{$STAGE[[N]]{field}}=(
> [座標A],[座標B],'[モンスターコード]'
> );
> ※進行度が[N]の時,
> $STAGE[[N]]{place}の中心から北に[座標A]歩,東に[座標B]歩の地点に
> [モンスターコード]のモンスターが出現,戦闘になる。
> ※@{$STAGE[N]{need}}を同時に指定した場合,
> @{$STAGE[N]{need}}が達成されるまで何度でも戦闘できてしまうので注意。
> 末尾の『1;』は消さないようにしてください。