職業を作ってみる

さて、スキルの作り方が分かった所で職業の作成に入ってみましょう。

大きく分けて、職業の作成に必要な作業は3つあります。
①職業のグラフィックを用意する
②職業の基本データを_dataに入れる
③職業のスキルデータを_skill.cgiに入れる

今回は順に追って作って行ってみましょう。
今回作る職業は彼らです。


つまるところは猫です。
職業:猫を作ってみましょう。

①グラフィックの用意
今回は猫を使うという事で問題無いですが、グラの無い職業は自分で作ります。
ドット絵指南を参考にどうぞ。
なお、猫2匹は此処で拾ってもいいですが、既に落としてあるはずの基本データの中、party/icon/chrの30と31がこの画像です。

入手したらparty/icon/jobに入れましょう。
名前は
黒猫を74_m.gif、白猫を74_f.gif
で保存します。

②職業の基本データを作る
今度は_date.cgiを開いて下さい。

[68,	'コロヒーロー',		5,	2,	4,	3,	3,		sub{ &_is_need_job(68)   ||  $m{ite} eq '99' }],
[69,	'プチヒーロー',		5,	2,	4,	3,	3,		sub{ &_is_need_job(69)   ||  $m{ite} eq '100' }],
[70,	'天竜人',		4,	5,	3,	2,	3,		sub{ &_is_need_job(70) }],
[71,	'チョコボライダー',	5,	3,	2,	3,	2,		sub{ &_is_need_job(71)   ||  $m{ite} eq '108' }],
[72,	'算術士',		3,	6,	1,	3,	3,		sub{ &_is_need_job(72)   ||  $m{ite} eq '109' }],
[73,	'すっぴん',		5,	5,	4,	4,	4,		sub{ -f "$userdir/$id/comp_job_flag.cgi" }],

等と職業名の一覧の下にありますので

[74,	'猫',		HP,	MP,	攻撃,	防御,	素早さ,		sub{ 1 }],

とすっぴんの下に追加しましょう。
こうする事で職業がデータ上追加されますが、この状態でアップロードすると戦闘時に暗転します。

HPにはHPの成長率、MPにはMPの成長率、攻撃にはAtの成長率、防御にはDfの成長率、素早さにはAgの成長率をそれぞれ入れます。
一つの限界は9までなので、それ以上を指定しないように。

③職業のスキルデータを作る
此処が一番楽しくなる所です。
さて、猫はどういう事をするのが得意でしょうか。
素晴らしい跳躍力、俊敏性、柔軟性、癒しが候補と上がります。

これを職業に置き換えるなら…
スピードアタッカー兼ヒーラーと呼んだ、高速回復型となります。
要するに武道家+僧侶ですね。

余談はここまでにして、スキルを作っていきましょう。
_skill.cgiを開いて下さい。

sub skill_73 { # すっぴん
my $v = ($ms{$m}{at} + $ms{$m}{df} + $ms{$m}{ag}) % 73;
# ※注意『$v eq '73'』は無限ループ防止(skill_73 が &{ skill_73 } を呼び続けてしまうので、『sub skill_73 {』と『…if $v eq '73'…』の数字は同じにすること!)
$v = 8 if $v eq '73' || $v <= 0;
return &{ 'skill_'.$v };
}

職業の一番最下層だったすっぴんを検索にかけると、こうやって出てきます。
この下に、この文章をまずは追加しましょう。

sub skill_74 { # 猫
}

これでとりあえずはエラーが起きませんが、
これでは何もスキルは使えません。

では、導入して行きましょう。

まずは最も最初に覚える基本技能、猫の代名詞であるお昼寝。

	[5,	0,		'ねる',			sub{ $ms{$m}{state}='眠り'; $com.=qq|<span class="state">$mは眠りだした</span>|; &_heal($m, $ms{$m}{mhp}*0.5);	}],

次に攻撃であるひっかき。

	[15,	8,		'ひっかき',			sub{ &_damage(shift, $ms{$m}{at}*1.2, '攻');		}],

更に素早さを上げるけいかい。

	[35,	3,		'けいかい',			sub{ &_st_up(shift, 0.4, '無', 'ag');	}],

相手をびびらせるいかく。

	[55,	12,		'いかく',		sub{ $is_add_effect = 1; my($y) = &_st_down(shift,  0.4, '歌', 'at'); return if !$y || $ms{$y}{hp} <= 0; &_st_d($y, '動封', '歌', 55);	}],

さいごに切札級スキルとして、ねこまっしぐら。

	[90,	20,		'ねこまっしぐら',		sub{ my($y, $v) = &_damage(shift, $ms{$m}{ag} * 1.8, '攻'); return if $v <= 0; &_risk($v * 0.07);		}],

以上でとりあえず猫スキルは出来上がりました。
さて、完成状態を見ると…

sub skill_74 { # 猫
	[5,	0,		'ねる',			sub{ $ms{$m}{state}='眠り'; $com.=qq|<span class="state">$mは眠りだした</span>|; &_heal($m, $ms{$m}{mhp}*0.5);	}],
	[15,	8,		'ひっかき',			sub{ &_damage(shift, $ms{$m}{at}*1.2, '攻');		}],
	[35,	3,		'けいかい',			sub{ &_st_up(shift, 0.4, '無', 'ag');	}],
	[55,	12,		'いかく',		sub{ $is_add_effect = 1; my($y) = &_st_down(shift,  0.4, '歌', 'at'); return if !$y || $ms{$y}{hp} <= 0; &_st_d($y, '動封', '歌', 55);	}],
	[90,	20,		'ねこまっしぐら',		sub{ my($y, $v) = &_damage(shift, $ms{$m}{ag} * 1.8, '攻'); return if $v <= 0; &_risk($v * 0.07);		}],
}

以上の物をすっぴんの下に追加する事になります。
これで完成です。

なお今回追加したスキルと性能をまとめると、以下のようになります。


転職条件:初めから転職可能
全成長率⇒任意の数値

使えるわざ
習得SP 消費MP スキル名 対象 効果
5 0 ねる 自分 「眠り」状態にして最大HPの半分を回復
15 8 ひっかき 敵一体 中ダメージを与える
35 3 けいかい 自分 素早さを少し上昇させる
55 12 いかく 敵一体 攻撃力を少し下げる+中確率で「動封」付与
90 20 ねこまっしぐら 敵一体/自分 素早さ依存の大ダメージ+与えたダメージの一部を反動で受ける
最終更新:2009年09月10日 18:58
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。
添付ファイル