goo blog サービス終了のお知らせ 

楽しく学ぶ!勉強用クイズゲーム製作 ShilkAmazezLounge

ブラウザ版はファンティアで公開しております。
解答・解説については新キャラにて実装致します。

初心者用解説・講座 スクリプト

2017年01月06日 | 初心者用解説・講座

 


         アイテム選択欄から一部の項目を無くす方法


            複数アイテムによる条件設定

            複数武器・装備による条件設定

            アクターレベルによる条件設定

               所持金最大値の変更

            アイテム所持最大値の変更

 


初心者用解説・講座 スクリプト アイテム所持最大値の変更

2017年01月05日 | 初心者用解説・講座

初期状態は所持金最大値が99だけど
それ以上持てるようにしたい場合、
簡単に設定を変更できます。

所持金最大値の変更は
「ゲームオブジェクト」の「Game_Party」の「219行目」の
数字を変更することで所持金最大値を変更できます。

ここでお気付きの方は
初心者用解説・講座 スクリプト 複数武器・装備による条件設定」で解説した
「item_number(item)」が225行目にあることが確認できます。
(ここは上記のことは挙げておりませんでしたが…)

ここ(219行目)で所持数を最大999などに設定すれば、
指定した最大値まで取得できます。
(ただし、アイテム100個獲得したい場合は
 イベントコマンドの「アイテムの増減」で「+99」、「+1」などと2つ設定するか
 イベントコマンドの「アイテムの増減」で変数を用いて100個取得などに設定する形となります。)

スクリプト例:

※上記はアイテムの最大所持数999に変更してます。

 


初心者用解説・講座 スクリプト 所持金最大値の変更

2017年01月05日 | 初心者用解説・講座

初期状態は所持金最大値が99万9999だけど
それ以上持てるようにしたい場合、
簡単に設定を変更できます。

ただし、所持金最大値を変更した場合は
変数を用いた銀行システムを作成する場合、
変数の必要な数が変わる事を覚えておく必要があります。
(初期最大値999999(6桁)から変更した桁数による変数の必要数が変わります)

所持金最大値の変更は
「ゲームオブジェクト」の「Game_Party」の「200行目」の
数字を変更することで所持金最大値を変更できます。

例:

※上記所持金最大値は999万9999(7桁)に変更してます。

 


初心者用解説・講座 スクリプト 複数武器・装備による条件設定

2017年01月05日 | 初心者用解説・講座

任務(クエスト)などで複数のアイテムを条件として設定する方法で
変数を使った方法を説明しましたが、
これと同じように武器や装備も同じように可能です。

こちらもスクリプトを用いて一つにすることで
処理が少なく済みます。

そのスクリプトは武器の場合、
$game_party.armor_number($data_armors[アイテムID]) >= 条件アイテム個数
で条件を設定できるはずです!
(VXの時はRPG製作をしてましたが、挫折したので確認できません…)

アイテムIDはデータベースにある武器欄のID(武器ID:001の場合、1)を参照し、
条件アイテム個数は必要条件が3個にしたい場合は半角数字で3を入力します。 
(武器ID:001で条件3個で指定したい場合、$game_party.armor_number($data_armors[1]) >= 3

装備の場合、
$game_party.weapon_number($data_weapons[アイテムID]) >= 条件アイテム個数
で条件を設定できるはずです!
(VXの時はRPG製作をしてましたが、挫折したので確認できません…)

アイテムIDはデータベースにある装備欄のID(装備ID:001の場合、1)を参照し、
条件アイテム個数は必要条件が3個にしたい場合は半角数字で3を入力します。 
(装備ID:001で条件3個で指定したい場合、$game_party.weapon_number($data_weapons[1]) >= 3

アイテム・武器・装備と何故、このスクリプトになるのかというと、
まず、「$game_party」はスクリプト内のゲームオブジェクトにある「Game_Party」を参照することになります。

ここでアイテムの増減や所持数最大か、アイテムの消耗などを判定してます。

「Game_Party」の208行目または221行目の
「アイテムの所持数取得」、「アイテムの最大所持数取得」のように
アイテムの番号を知る必要があるため、「item_number」が必要であり、
()内は意外なとこに見つけましたが、
モジュールの「DataManager」にそれっぽいのが…
で、ゲームオブジェクトの「Game_BaseItem」に
「アイテムオブジェクトの取得」の箇所に「$data_items[@item_id]」
これでアイテムの番号…IDの指定ができました…が、
条件を加える訳なので以上なのか以下なのか同じなのか未満なのか超なのか…
これらを設定しないと意味がありません。

以上は「≧」なので「>=」、以下は「≦」なので「<=」、
未満は「<」、超は「>」…
それ以外という場合は
以外は「!=」になります。
(これらは条件分岐の変数の設定などで確認できます。)

アイテム同様、これで複数の場合の条件を設定できるはずです。
(検証してませんので多分としか言えませんが…)

 


初心者用解説・講座 スクリプト アクターレベルによる条件設定

2017年01月04日 | 初心者用解説・講座

一定レベルに達するとアイテムが得れる、任務が達成するなどのシステムを作りたい場合に役立ちます。

$game_actors[アクターID].level >= レベル条件
で、指定キャラクターのレベルによる条件を作成できます。

アクターIDはデータベース内のアクターにあるID(アクターID:001の場合は[アクターID]の箇所を1で設定)、
レベル条件は指定したいレベルを設定します。
(アクターID:001でLv50で指定したい場合、$game_actors[1].level >= 50)

例:

※上記は製作中ゲームの任務で使用しております。

上記のような形で職業の変更、スキルの増減、アイテムの獲得、任務の達成などの条件設定ができます。

 


初心者用解説・講座 スクリプト 複数アイテムによる条件設定

2017年01月04日 | 初心者用解説・講座

任務(クエスト)などで複数のアイテムを条件として設定する方法で
変数を使った方法がありますが、
これを使うと一つのイベントデータ内で
例えば、アイテム1が20個ある時の条件と
アイテム2が20個ある時の条件2つを一つのイベント内で設定したい場合、
複数の変数を用いることは可能ですが、
容易ではない事と無駄にデータを作成してしまう分、
その一つのイベントだけで容量を使ってしまいます。

そのため、スクリプトを用いて一つにすることで
処理が少なく済みます。

そのスクリプトは
$game_party.item_number($data_items[アイテムID]) >=条件アイテム個数
で条件を設定できます。

アイテムIDはデータベースにあるアイテム欄のID(アイテムID:001の場合、1)を参照し、
条件アイテム個数は必要条件が3個にしたい場合は半角数字で3を入力します。 

これを利用する事で少ないイベント設定で済み、
多くの設定ができます。

例:

※上記は製作中クイズゲームのイベント実施時のものです。

任務(クエスト)などの作成でこれでも一つのイベントに設定が多い場合、
コモンイベントで設定してイベントデータで開くことでデータ容量を軽減できます。


初心者用解説・講座

2015年07月31日 | 初心者用解説・講座

                 データベース(工事中)


                 スイッチ操作(工事中)


                 マップ設定(工事中)



                イベント配置設定(工事中)



                リージョン設定(工事中)



                 素材管理(工事中)



             アイテム(能力値計算式設定)(工事中)



            敵キャラ・敵グループ 行動パターン(工事中)



                アニメーション(工事中)



               タイルセット編集(工事中)



                コモンイベント(工事中)



                 システム(工事中)



                   スクリプト



初心者用解説・講座 スクリプト アイテム選択欄から一部の項目を無くす方法

2015年07月31日 | 初心者用解説・講座

意外にもお問い合わせが多かったため、ご説明をさせて頂きます。


勿論、スクリプトを追加するような事はしませんし、
一部の箇所を消してしまうだけなので誰でも簡単に行う事ができます。


ただ、スクリプトを編集する前に制作中のゲームファイルをコピーして
不具合の発生を考慮して予備を作成しておくことをお勧めします。


スクリプトの追加としては上級者向けとは言えますが、
簡易的な編集は箇所が判れば初心者の方でも問題なくできます。


まず、スクリプトを開いてみて、
「どこいじればいいか分かりにくい!」ってなるかと思います。


では、アイテム選択の項目はゲーム中、
何から開くかを考えると想像がついてくるかと思います。


ゲーム中、『メニュー』を開いて、『アイテム』を選択し、
『アイテム・武器・装備・大事なもの』のような『カテゴリー』が表示されます。


ここから感づくかと思われますが、
『スクリプト』の欄に『アイテムカテゴリー』というものが存在します。


「探しても分からん!」という方もいるかと思いますので、
画像を用意してみました。




この『▼ウィンドウ』の『Window_ItemCategory』を探してクリックします。


次に『● コマンドリストの作成』を探します。






ここから、当クイズゲームは ”RPGではない“ ため、『武器』や『装備』は利用しません。


そこで、『武器』の英語は『weapon』、『装備』の英語は『armor』なため、
こいつらを消しちゃいます!


こんな感じに↓






これで『武器』と『装備』の項目が無くなりました!


逆に『アイテム』や『大事なもの』の表示を無くしたい場合は
『add_command(Vocab::item,          :item)』が『アイテム』の項目で
『add_command(Vocab::key_item,  :key_item)』が『大事なもの』の項目になります。


勿論、この状態では『スクリプトエラー』が発生してしまいます。


何故なら、『消した時の空白が残ってる』からです!
忘れがちなのは、『スペースキー』で発生する『空白部分』の削除し忘れによる
エラーもあるのでご注意下さい。


というわけで…この空白を無くして整えます。


こんな感じに↓






これで『空白部分』を無くして整えたので『空白によるエラー』は発生しません。


では、「他にエラーが発生するのか?」となるかと思うかもしれませんが、
考えてみれば、『一部の項目を消しちゃってる』わけなんです。


そう、そのカテゴリーに本来あるはずの『桁数』が消えるわけです。


消しちゃった分の『桁数』を整えないといけません。


そこで『● 桁数の取得』を探します。






勿論、先程までは『● コマンドリストの作成』の箇所に『4つのコマンド』があったため、
『● 桁数の取得』では『def col max    return 4     end』になってるかと思います。


勿論、この『return 4』が『アイテムカテゴリーの数(桁数)』です。


当クイズゲームでの説明の場合は『武器』と『装備』の項目を削除してますので
この場合、『2つ』消している事になります。


なので、『● 桁数の取得』の箇所の『return 4』を『return 2』に変更します。


こんな感じに↓






文字色は自動的にスクリプト上で色は変わりますので
色の変更を行ったりする必要はありません。


これで『OK』のボタンを押して『テストプレイ』で
『メニュー』項目にある『アイテム』を選択し、項目が消えているかを確認してみて下さい。


『エラー』が発生した場合、
どこかに『改行した箇所や空白部分が残っている』可能性があるため、
『空白部分を消して』列を整えてみて下さい。


「それなら、項目の追加もできるんじゃないか?」となるかと思いますが、
追加をすると、その分、他のコマンドを反映させるために
『スクリプトを追加』する必要がありますので、
スクリプトに不慣れな方にはお勧めできません。


当制作クイズゲームのように
『制作はRPGツクールであって、RPGとして利用しないゲーム』で
『武器』、『装備』などを利用しない場合は、このように項目を無くす事ができます。


Shilk Lounge

当サイトの制作ゲームは個人(Shilk Amazez)で 制作を行っているフリーゲーム及び販売ゲームです。
著作権の放棄はしておりません。