隠れキャラ
- 青色は、改造箇所を示します。ファイル名: ルーチン名: 行番号 を示します。
- 黒色文字は、「改造前の状態」を示します。
- テキストボックスの中のプログラムを、該当の場所に上書きして下さい。
隠れキャラ Ver 1.01 ★★☆☆☆☆☆☆
ボス敵や重要キャラなど、NPCの隠れキャラを作る改造です。
この 改造を取り入れる際には、併せて 【 改造者表示 】 の改造を取り入れて頂けると嬉しいです。(非強制)
履歴 2007/02/17 Wikiにて公開 2003/08/21 フラグが楽器装備と被っていたので Bl に変更/細かいバグ修正 2003/08/20 Version 1.00 公開
この改造によって− ● フラグ Bl があるキャラクターは、リストに表示されなくなります。 ● フラグ Ng または Bl があるキャラクターは、プレイヤー総数にカウントされません。 ● フラグ Ng または Bl があるキャラクターは、CPUキャラ数としてそのキャラ数が表示されます。 ● フラグ Bl だけを持つキャラクタには、通常の方法では出会えなくなります。 また、ゲーム中のキャラ一覧プルダウンリストにも表示されません。 別途NPC遭遇改造などが必要です。 ● フラグ Bl と、V[a-z]の紹介状 フラグを持つキャラクタは、該当する紹介状を持っている場合に限って表示されるようになります。 別途、街移動システムなどを導入している場合、別の街にいる場合は表示されません。 ● フラグ Bl を持たないキャラは、これまで通り通常に表示されます。 |
○ 改造ポイント03は、環境によって若干異なります。 ご自身の該当部分を十分ご確認の上で修正を行ってください。 ○ マシマロさんの分割バージョンの一部では、List In Order が2つ存在する場合があります。other.pl の方を修正して下さい。 |
共通改造ポイント
◆改造ポイント01 リスト表示部を修正します。
sos2.cgi # Sub List In Order # Line:1940
perl/other.cgi # Sub List In Order # Line:16
next if $Fm{'order'} eq 'Rate' && $sp !~ /Tf/;
※ NPC数を表示しない時は $npcplayer++; 2箇所削除。
sos2.cgi # Sub Saga # Line:452
perl/option.cgi # Sub Saga # Line:105
$totalplayer = @odrlines;
※ NPC数を表示しない時は $totalplayer = @odrlines; を消すだけ。
sos2.cgi # Sub Saga # Line:455
print qq|現在のプレイ人数:$playernow</b></div></td></tr>\n|;
perl/option.cgi # Sub Saga # Line:113-114
print qq|現在のプレイ人数:$playernow</b>\n|;
print qq|</div></td></tr>\n|;
※ NPC数を表示しない時は改造無し。
◆改造ポイント02 直接ID入力などで遭遇されるのを防止し、存在しない状態を偽装します。
sos2.cgi # Sub Contact Check # Line:719
perl/any.cgi # Sub Contact Check # Line:6
@prclines = &get_partner("$Fm{'pd'}");
本家版改造ポイント/dollEx版改造ポイントへ進む : 改造ポイント03を実施
本家版改造ポイント
◆改造ポイント03 探索回数決定部を修正します。
sos2.cgi # Sub Normal Action # Line:641-643
($pid,$pnm,$pps,$pjb,$pig,$psp,$pbp,$others) = split(/<>/,$line);
if ($Fm{'id'} eq $pid) { $mysp = $psp; $mybp = $pbp }
else { print qq|<OPTION value="$pid">$pid:$pnm($pjb)\n| }
($pid,$pnm,$pps,$pjb,$pig,$psp,$pbp,$pbn,$pak,$pdd,$php,$pxp,$pab,$pdb,$pav,
$pwn,$plz,$pdt,$pmn,$pbg,$pxi,$ptm,$plf,$pfe,$pcm,$pis,$pht,$pfg,$prw,$pkl)
= split(/<>/,$line);
($myid,$null,$null,$null,$null,$mysp,$mybp,$null,$null,$null,$myhp,$myxp,
$null,$null,$myav,$null,$null,$null,$null,$mybg,$null,$null,$null,$null,
$null,$null,$null,$null,$null,$null) = split(/<>/,$line);
上記2箇所は、環境・他の改造などに併せて修正して下さい。
また、$tw や $area/$paa など、街・エリアフラグを追加している場合は、それを含める様にして下さい。
dollEx版改造ポイント
◆改造ポイント03 探索回数決定部を修正します。
perl/action.cgi # Sub Normal Action # Line:11-13
($pid,$pnm,$parea,$pps,$pjb,$pig,$psp,$pbp,$pbn,$pak,$pdd,$php,$others) = split(/<>/,$line);
if ($Fm{'id'} eq $pid) { $mysp = $psp; $mybp = $pbp; $myhp = $php }
else { print qq|<OPTION value="$pid">$pid:$pnm($pjb)\n| }
($pid,$pnm,$parea,$pps,$pjb,$pig,$psp,$pbp,$pbn,$pak,$pdd,$php,$pxp,$pab,
$pdb,$pav,$pwn,$plz,$pdt,$pmn,$pbg,$pxi,$ptm,$plf,$pfe,$pcm,$pis,$pht,
$pfg,$prw,$pkl,$plv,$pexp,$pct) = split(/<>/,$line);
($myid,$null,$myarea,$null,$null,$null,$mysp,$mybp,$null,$null,$null,
$myhp,$myxp,$null,$null,$myav,$null,$null,$null,$null,$mybg,$null,$null,
$null,$null,$null,$null,$null,$null,$null,$null,$null,$null,$null)
= split(/<>/,$line);
上記2箇所は、環境・他の改造などに併せて修正して下さい。