ツリー型のスキル習得システムのプラグイン

フォーラムルール
素材の利用規約を決めたいけど、どんなことを書けばいいのか分からない場合は、
素材のテンプレートをご利用下さい。
フトコロ
記事: 226
登録日時: 2017年2月06日(月) 21:32

ツリー型のスキル習得システムのプラグイン

投稿記事by フトコロ » 2017年2月25日(土) 21:50

お世話になっております。

スキル系プラグイン第3弾として、ツリー型のスキル習得システムのプラグインを投稿します。

下の図のように、スキルツリーを表示し、ツリーから選んだスキルを習得できます。
スキルの習得コストは、SP(本プラグイン専用のパラメータのスキルポイント)や
アイテム、お金、変数から設定できます。
スキルツリー画面.jpg
スキルツリー画面.jpg (76.76 KiB) 閲覧数: 4504 回

上の図のアイコン枠の色は、それぞれ以下を意味します。(色は変えられます)
青:スキルに設定されたコスト不足、または習得条件未達
黄:習得可能
黒:前提スキル未修得
白:習得済(図にはないです)

>2017/03/31 v1.6.0更新に伴い以降を変更
ウィンドウサイズや位置などを変更したい場合は、拡張プラグインのウィンドウカスタムプラグイン(FTKR_STS_CustomWindow.js)を使用してください。
ウィンドウカスタムプラグインのプラグインパラメータで、変更できます。

ツリー画面は、メニューに「スキル習得」コマンドを表示して呼ぶことができますが、プラグインコマンド<STS Open>を使用することでも、表示できます。


プラグインのダウンロードと使い方については、以下を参照してください。
<マニュアル>
https://github.com/futokoro/RPGMaker/blob/master/FTKR_SkillTreeSystem.ja.md

<ダウンロード>
FTKR_SkillTreeSystem.js
https://raw.githubusercontent.com/futokoro/RPGMaker/master/FTKR_SkillTreeSystem.js
FTKR_STS_CustomWindow.js
https://raw.githubusercontent.com/futokoro/RPGMaker/master/FTKR_STS_CustomWindow.js


自身でデバッグを行いましたが、バグがとりきれていない可能性があります。
不具合等ありましたら、ご報告いただきたく、よろしくお願いいたします。

<FTKR_SkillTreeSystem.js v1.6.0の更新について>------------
更新記事
http://tm.lucky-duet.com/viewtopic.php?f=5&t=3201&start=100#p11712

!v1.5.0 から v1.6.0以降へ更新する際の注意点!
プラグインパラメータ<Cost Item Format>のデフォルト値を変更しました。
v1.5.0:%1\l[16]\n%2\lR[3]\c[17]\n%3\c[17]\lR[5]
 ↓
v1.6.0:%1
お手数をかけますが、更新時には手動で修正をお願いします。
---------------------------------------------------------------------------

<FTKR_STS_CustomWindow.js v1.1.0の更新について>--------
!v1.0.x から v1.1.0以降へ更新する際の注意点!
ディプロイメント対応のためアクターの立ち絵表示用のタグを変更しました。
(変更前)
<Set Sts Data>
BGI NAME: ImageName
code
</Set Sts Data>

(変更後)
<STS_画像:ImageName>
code
</STS_画像>
お手数をかけますが、更新時には手動で修正をお願いします。
---------------------------------------------------------------------------

画像 #クレジット不要

画像 #営利可(素材販売ダメ)

画像 #改変可

画像 #ゲームに含めるなら再配布可

画像 #アダルトOK
画像 #グロOK

>プラグインはGitHubで公開しています。
最後に編集したユーザー フトコロ on 2017年4月22日(土) 00:52 [ 編集 32 回目 ]

フトコロ
記事: 226
登録日時: 2017年2月06日(月) 21:32

Re: ツリー型のスキル習得システムのプラグイン

投稿記事by フトコロ » 2017年2月25日(土) 22:01

プラグインの使用方法を説明します。

スキルツリーは、武器のデータベースを使用して作成します。
まず、武器タイプにスキルツリー用のIDを設定してください。
スキルツリー用IDは、プラグインパラメータ<Skill Tree Id>に登録してください。
スキルツリー用の武器タイプの設定.jpg
スキルツリー用の武器タイプの設定.jpg (59.19 KiB) 閲覧数: 4380 回


次に、武器でスキルツリーのデータを作成します。
<Set Sts Data>タグでツリーの設定を行います。

タグ内の記述の意味
<skill: 9,0,12>
 ツリーの起点となるスキルを、ID9、ID12のスキルに設定します。
 0を入力すると、ツリー上でスペースが空きます。
<required: a.level > 2>
 ツリーを表示する条件に、アクターのレベルが2より大きい場合を設定します。

なお、武器の名前がツリーの名前に、武器のアイコンがツリーのアイコンになります。
スキルツリーの設定(武器).jpg
スキルツリーの設定(武器).jpg (26.7 KiB) 閲覧数: 4496 回


次に、派生させるスキルのデータを作成します。
<Set Sts Data>タグでツリーの設定を行います。

タグ内の記述の意味
<skill: 16,20>
 派生するスキルを、ID16、ID20のスキルに設定します。
 0を入力すると、ツリー上でスペースが空きます。
<required: a.level > 5>
 アクターのレベルが5より大きい場合に、スキルが習得できます。
<cost sp: 2>
 習得に必要なスキルポイントを 2 に設定します。
 このタグを記載しない場合は、プラグインパラメータ<Default Required SP>で設定した値になります。
<cost item[1]: 1>
 習得に必要なアイテム(ID1)を1つに設定します。
<cost gold: 1>
 習得に必要なお金を1Gに設定します。
他に、
<cost v[1]: 1>タグで、習得に必要な変数ID1 の値を 1 に設定できます。

上のタグを、派生先のスキルにも設定することで、ツリーを構成していきます。
スキルの設定.jpg
スキルの設定.jpg (38.44 KiB) 閲覧数: 4496 回


>2017/02/28 v1.0.3更新により以下の説明を修正
作成したスキルツリーは、アクターに登録します。
<Set Sts Data>タグでツリーの設定を行います。

タグ内の記述の意味
<treetype: 5,6>
 そのアクターが使用するツリーをID5,ID6のツリーに設定します。
 ここでのIDは、ツリーを作成したときの武器IDです。(武器タイプIDではありません)
<init sp: 10>
 アクターの初期SPを10に設定します。

<TreeType>タグは、クラスにも設定できます。
アクターの設定.jpg
アクターの設定.jpg (40.85 KiB) 閲覧数: 3895 回


簡単ですが、以上の流れでスキルツリーを設定できます。

わからないことがありましたら、質問いただければ回答します。

以上、よろしくおねがいいたします。
最後に編集したユーザー フトコロ on 2017年2月28日(火) 23:06 [ 編集 2 回目 ]
りぃく
記事: 22
登録日時: 2016年3月27日(日) 23:12

Re: ツリー型のスキル習得システムのプラグイン

投稿記事by りぃく » 2017年2月26日(日) 12:12

こんにちわ、すごく良いプラグインですね。ちょうどスキルツリーのプラグインないのかなと探していたところに見つけてしまいました。ところでレベルアップ時以外にSPは取得出来ないんでしょうか?例えばイベントなどで特定のイベントを達成することでSPを獲得できるようなイベントを組みたいんです。よろしくお願いします。
フトコロ
記事: 226
登録日時: 2017年2月06日(月) 21:32

Re: ツリー型のスキル習得システムのプラグイン

投稿記事by フトコロ » 2017年2月26日(日) 14:08

りぃくさん

当プラグインをご利用いただき、ありがとうございます。

ご要望の、レベルアップ以外の手段でのSP取得について、v1.0.1 にて機能を追加しました。
以下の手段でSPを取得できます。

1. プラグインコマンドを使用(v1.0.2でコマンド変更)
<STS Add Sp(x) Actor(y)>
 アクターID y が、SPを x 取得する。
 x や y には、変数を指定できます。

例)<STS Add Sp(10) Actor(v[1])>
 変数ID1に格納した番号のアクターが、SPを10取得する。

2. アイテムに以下のタグを記入
<STS Get Sp: x>
 対象が、SPを x 取得する。

3. エネミーに以下のタグを記入
<STS Get Sp: x>
 エネミーを倒すと、パーティー全員がSPを x 取得する。

ご確認ください。

>旧バージョンのため削除しました。最新版をご利用ください。
最後に編集したユーザー フトコロ on 2017年2月26日(日) 21:38 [ 編集 1 回目 ]
フトコロ
記事: 226
登録日時: 2017年2月06日(月) 21:32

Re: ツリー型のスキル習得システムのプラグイン

投稿記事by フトコロ » 2017年2月26日(日) 14:58

スキルツリーのレイアウト設定についてご説明します。

まず、以下のスキルツリーを作成します。
※説明のため<Set Sts Data>は省略しています

スキルツリー1のタグ:<skill: 1,2>
スキル1のタグ:<skill: 3,4>
スキル2のタグ:<skill: 5>
スキル3のタグ:なし
スキル4のタグ:<skill: 6>
スキル5のタグ:<skill: 6>
スキル6のタグ:なし

この設定の場合、スキルツリー1のレイアウトは以下の図になります。
ツリーのレイアウトはタグの入力情報から自動的に左詰で配置するのですが、
スキルの派生設定によっては、図のように見づらい配置になってしまいます。

スキルツリー.jpg
スキルツリー.jpg (92.73 KiB) 閲覧数: 4345 回


そこで、以下のタグを修正します。
スキルツリー1のタグ:<skill: 1,0,2>
スキル4のタグ:<skill: 0,6>

起点および派生先に'0'を加えました。
これにより、'0'の部分が空欄になり、下の図のように見やすい配置になります。
スキル4の派生先に '0' を追加しましたが、替わりにスキル3の派生先に'0' を追加しても同じです。

スキルツリー修正後.jpg
スキルツリー修正後.jpg (92.69 KiB) 閲覧数: 4345 回


また、以下のプラグインパラメータの設定を変更することで、レイアウトを変えることもできます。
<Skill Tree Max Cols>:5 ⇒ 3
 スキルを横に並べられる最大数の設定
<Skill Tree Height Space>:24 ⇒ 96
 スキルの縦の間隔
<Draw Line Type>:1 (カギ線) ⇒ 0 (直線)
 スキル間の線の引き方

上のように設定を変えると、下の図になります。

プラグインパラメータ設定変更後.jpg
プラグインパラメータ設定変更後.jpg (94.13 KiB) 閲覧数: 4345 回


簡単ですが、以上の流れでスキルツリーのレイアウトを設定できます。

わからないことがありましたら、質問いただければ回答します。

以上、よろしくおねがいいたします。
フトコロ
記事: 226
登録日時: 2017年2月06日(月) 21:32

Re: ツリー型のスキル習得システムのプラグイン

投稿記事by フトコロ » 2017年2月26日(日) 21:37

お世話になっております。

プラグインを v1.0.2 に更新します。
更新内容は、以下の通りです。

1. スキル間の線の色を、アイコン枠の色に合わせられる機能を追加しました。
2. FTKR_SkillExpansion.jsと組み合わせることで、スキルを複数回習得させることができる機能を追加しました。
3. プラグインコマンド<STS Get Sp() Actor()>を<STS Add Sp() Actor()>に変更しました。

更新内容の1,2について説明します。
下の図は、FTKR_SkillExpansion.jsと組み合わた状態です。

スキルツリー画面_v1.0.2.jpg
スキルツリー画面_v1.0.2.jpg (103.25 KiB) 閲覧数: 4211 回

<更新内容1について>
スキル2とスキル5の間の線や、スキル4とスキル6の間の線が黒くなっていることが分かると思います。
このように、派生先のスキルの枠の色が、スキル間の線の色になるようにしました。
プラグインパラメータ<Fit Line Color To Flame>の設定で、合わせないを選択すれば、従来の白線に戻せます。

<更新内容2について>
各スキルアイコンの右側に四角で囲まれた数字が表示されています。
これがスキルの習得回数を表しています。

<Set Sts Data>タグに<Max count: x>を追加することで、最大習得回数を x に設定できます。

プラグインパラメータ<Enabled Skill Count>を有効にすると、本機能を使用できます。
今回の機能追加に伴い、スキルを習得した状態を表すアイコンの表示位置を図のように変更しました。

この機能だけでは特に意味はありませんが、図の上部のスキル説明文に「習得2回目」と表示しているように、スキル拡張プラグインの機能によって、拡張したスキルに習得回数を反映させることができます。

習得回数をスキルに反映.jpg

図のスキルは、スキル説明文を2つ登録し、2つ目の表示条件を習得回数(cnt)2回以上と設定しています。
他にも、ダメージ計算式にも習得回数を使いダメージを変えています。

使い方で分からないところがありましたら、返信いただければ回答いたします。
以上、よろしくお願いいたします。

>プラグインを更新したため、旧バージョンは削除しました
最後に編集したユーザー フトコロ on 2017年2月28日(火) 23:07 [ 編集 1 回目 ]
くりちほ
記事: 5
登録日時: 2017年2月28日(火) 20:20

Re: ツリー型のスキル習得システムのプラグイン

投稿記事by くりちほ » 2017年2月28日(火) 20:25

はじめまして。
素晴らしいプラグインですね!
スキルツリーのプラグインを探していたので、ぜひ使わせて頂きたいと思います。

ひとつ質問ですが、習得したスキルや消費したポイントを
リセットするアイテムを作ることはできますか?
お手数ですが、よろしくお願い致します。
フトコロ
記事: 226
登録日時: 2017年2月06日(月) 21:32

Re: ツリー型のスキル習得システムのプラグイン

投稿記事by フトコロ » 2017年2月28日(火) 22:56

くりちほさん

当プラグインをご利用いただき、ありがとうございます。

ご要望の、ツリーのリセット機能について、v1.0.3 にて機能を追加しました。

以下のタグをアイテムのノート欄に入力することで初期化できます。

<STS Reset Tree>
:対象のスキルツリーをすべて初期化します。
:使用したSPはすべて戻ります。

<STS Clear Tree>
:対象のスキルツリーをすべて初期化します。
:使用したSPは戻りません。


その他、v1.0.3では以下を更新しています。

1. ツリーを初期化するプラグインコマンドを追加しました。
2. 初期状態で習得済みのスキルに対しても、習得回数が反映するように修正しました。
3. アクターおよびクラス用のスキルツリー設定用タグを変更しました。

特に3番の更新内容について、このバージョン以降、以下のタグは使用できなくなります。
<Sts Set Init Sp: x>
<Sts Set TreeType: x1,x2,...>

上記のタグの機能は、以下のタグに替わります。
<Set Sts Data>
code
</Set Sts Data>

[code に使用できる項目]
TreeType: x1,x2,...
:そのアクター、またはクラスは、スキルツリーID x1,x2,...を
:使用できます。
:スキルツリーIDとは、ツリーとして作成した武器のIDです。
Init Sp: x
:アクターの初期SPを x に設定します。

この変更は、今後の更新によって追加する予定の機能のために必要だと判断したためです。
お手数をおかけして申し訳ありませんが、ご了承ねがいます。

>プラグインを更新したため、旧バージョンは削除しました。
最後に編集したユーザー フトコロ on 2017年3月02日(木) 19:19 [ 編集 1 回目 ]
くりちほ
記事: 5
登録日時: 2017年2月28日(火) 20:20

Re: ツリー型のスキル習得システムのプラグイン

投稿記事by くりちほ » 2017年2月28日(火) 23:45

さっそくの更新ありがとうございます!
動作確認できました。
これでますます使いやすくなりそうです。
メグミルク
記事: 41
登録日時: 2017年2月15日(水) 12:25

Re: ツリー型のスキル習得システムのプラグイン

投稿記事by メグミルク » 2017年3月02日(木) 16:52

初めまして。自分が探していたシステムがそのまま見つけたので使わせてもらいました。
そこで一つバグ?みたいなのが出たんですが、一度敵を倒してSPを入手してゲームを終了してから再び起動すると、今まで入手したSPが全てリセットされてしまいます。もしかしたら自分だけかもしれないんですが、何か原因でもあるのでしょうか。
よろしくお願いします(流石に手に入れたスキルまでは初期化されてません。SPだけがリセットされてしまいます)

“MV:プラグイン素材” へ戻る