アクセス
since 2009
Twitter
pixiv

Author:月紳士

→pixivについて

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

アクター毎のアイテム所持・コメントログ

【アクター毎のアイテム所持】記事のコメントログです。

テーマ : RPGツクール
ジャンル : ゲーム

コメントの投稿

管理者にだけ表示を許可する

DL報告と疑問点について。

早速使用させていただいたのですが、つきましては幾つか質問があります。
1:固定装備はどうやって設定するのでしょうか?
また、イベント内のスクリプトなどで解除するには
  どうすれば良いのか?
  (イベントなどで、最初は外せないが、中盤などで
  外せるようになる"悪魔の篭手"、みたいな表
  現をする場合などです)
2:スタックアイテムで15本の矢の束を設定したとし
 ます。この場合において、アイテムなどで5本分の
 矢を得る事などではできないでしょうか?自動結束
 機能が大変に素晴らしいので、是非とも、と思うの
 です。

以上の点について、可能であればお応え願いたいです。

Re: DL報告と疑問点について。

ご試用、コメントありがとうございます。

イベントコマンド・スクリプトで実行できる命令はあるのですが、 マニュアルでは説明していませんね。 いずれ、マニュアルを追加したいと思っています。 それまでは疑問点をお寄せいただき、返答する形でいこうと思います。

>固定装備はどうやって設定するのでしょうか?

固定装備はデータベースのアクター設定に装備固定のチェックがあるのをご存知でしょうか。
初期状態から固定にしたいのであれば、そちらをチェックします。(既存システムのスタイルです)

>また、イベント内のスクリプトなどで解除するには~

こういったケースですと、 部分固定・部分解除がよさそうですね。

actor = $game_actors[1]
actor.equipment_fixation_part(0)

の2行をイベントコマンドスクリプトで設定してください。 上記の一行目はアクターIDで指定する場合です。 パーティーの並び順で指定したい場合は

actor = $game_party.members[0]
actor.equipment_fixation_part(0)

で指定します。(先頭が 0 です)

2行目末尾の()内がequip_type、装備部位の指定です。
0:武器/1:盾or武器2/2:頭/3:体… です。

解除時は

actor = $game_actors[1]
actor.equipment_fixation_part_off(0)

となります。


>アイテムなどで5本分の矢を得る事~

端数を入手、ということでしょうか? 残念ながら現在の仕様では出来ません。

仕組みとして新たに組み込む必要がありますし、 また入手時の指定方法を一考する必要があるため、 今後の更新予定ということにさせてください。

マニュアルにある通り 端数を他アクターに渡す、ということは可能です。

劣化する武器・防具の設定

早速ですが、劣化する武器・防具の設定について、教えていただきたいのですが。
例えば、劣化した武器・防具を完全に消耗するまでに修復させる方法というのはあるものでしょうか。
いわゆる鍛冶屋さん(鍛冶スキル)。
欲をいえば、アイテムの価値によって鍛冶屋さんの対応(報酬)も変わってくるというのが可能であればいいのですが。

Re: 劣化する武器・防具の設定

このことは以前の記事で書いたことがあるのですが、
新しくいらっしゃった方の為にここに書きますね。

呪いの装備、鑑定、鍛冶屋、リザルト画面等は未実装です。

現在公開しているのはこのシステムで
最低限必要となるであろう要素です。

今後、余裕があれば開発します。

カスタムメニューコマンド

他のコマンド(スプリクト)を使用する関係上、「アクター毎のアイテム所持をmenuに」ではなく、KGC様のカスタムメニューコマンドを併用したいのですが、それでは「アクター毎のアイテム所持」のスプリクトが反映できません(起動しません)。
どのようにすればいいでしょうか。
ちなみに「レクトールと黒獅子の紋章」の対応例を参考にしようとしましたが、スプリクトの作りが違うようで、結局、自力では無理でした。
お手数ですが、アドバイスを、よろしくお願いします。

Re: カスタムメニューコマンド

対応例を書いてみました。

書き換え方法をまとめてみた感じではレクトールのものよりも
こちらのほうが理解しやすいと思います。どうでしょうか。

世界樹の迷宮風戦闘画面

「アクター毎のアイテム所持」とさば缶様の「世界樹の迷宮風戦闘画面」を併用しておりますが、アイテムを使用した際、「世界樹の迷宮風戦闘画面」のアクター選択画面に移行しません(通常の選択画面に移行します)。また、アイテムを購入した場合も同様です。
「アクター毎のアイテム所持」は、他のスクリプトとの併用化はサポートを行っていないことは理解していますが、何かアドバイスを頂ければ幸いです。

Re: 世界樹の迷宮風戦闘画面

> アイテムを使用した際、「世界樹の迷宮風戦闘画面」のアクター選択画面に移行しません
> (通常の選択画面に移行します)

さば缶様の「世界樹の迷宮っぽい戦闘画面」では
通常のアイテム画面(Scene_Item)への改変が行われていると思います。

「アクター毎のアイテム所持」のアイテム画面は
通常のアイテム画面ではなく、
独自に作っている画面(Scene_Actor_Item)なので
さば缶様のほうの改変の影響は当然受けません。
通常の選択画面に移行するのは仕様です。

「世界樹の迷宮っぽい戦闘画面」と同じような
選択画面を出したい、ということですと
「世界樹の迷宮っぽい戦闘画面」で
Scene_Itemに行われている改変と同じように
Scene_Actor_Itemへ改変を行う必要があると思います。

「世界樹の迷宮っぽい戦闘画面」については無知な為
ここまでしか助言できません。

 ちなみに、通常の選択画面だと多人数に対応していないので
 「世界樹の迷宮っぽい戦闘画面」で5人以上のパーティーを組むと
 5人以降のキャラをうまく選択することはできないのですが、
 これはKGC様の多人数パーティーを併用すると解決します。

> また、アイテムを購入した場合も同様です。

すみません。よくわかりませんでした。
アイテム購入時に「世界樹の迷宮っぽい戦闘画面」では
キャラクター選択画面が表示されるのでしょうか?

ver.1.06にてショップ等で
仮に多人数パーティーになった際の表示の挙動を修正・改善しましたが
それのことでしょうか?

KGCさんの装備拡張導入者

毎回とても丁寧な製作・対応に感激しております。

KGCさんのカスタムメニューへの対応方法について質問です。

実際の記述先まで記載されておりましたが、
私はKGCさんの拡張装備画面を導入しております。
(装備にアクセサリーが追加されたりしています)

そのためアイテム(元は装備メニュー)を選択すると
KGCさんの装備メニューに直接飛んでしまいアイテム表示の画面に
移行しません。

できれば、本作のアイテムメニューが最初に表示され
その中から装備を選択した場合に装備拡張画面に移行したいんです

装備拡張では、アイテムの使用・装備が行われるため、
色々処理がかぶっているかと思います。

難しいようでしたら、諦めますのでご確認だけ頂けますでしょうか。
URL(ドメイン部分省略)/tkool/rpgtech/php/tech.php?tool=VX&cat=tech_vx/equip&tech=equip_extension

Re: KGCさんの装備拡張導入者

このスクリプトでは
アイテムの管理方法に大幅に手を加えています。
装備の着脱に関しても同様です。

本来のシステムを改変するような他様スクリプトは
このスクリプトには使えません。
内部的にまったく別物になっているからです。

併用が難しい、ということでもないんです。
まったく別物なのでそのスクリプトは使うことが出来ない、
という感じです。ご要望のようにも変更はされません。


さて、装備部位を増やすことは
アクター毎のアイテム所持 でも可能です。
マニュアルへの記述がなかったので、
機能の正式実装と共に、アップデートしました。

Re: KGCさんの装備拡張導入者

それともう一点、気になりました。

> そのためアイテム(元は装備メニュー)を選択すると
> KGCさんの装備メニューに直接飛んでしまいアイテム表示の画面に
> 移行しません。

KGCさんのカスタムメニューへの対応を書いた該当記事では
Scene_Equipの代わりに
Scene_Actor_Itemを入れる改変を紹介しています。

KGCさんの装備拡張を入れているからといって
Scene_Equipが表示されることはありません。

正しく改変されればScene_Equipの改変有無関係なく
Scene_Actor_Itemは開くはずですよ。
改変手順に間違いがありませんか。

どちらにしろ、KGCさんの装備拡張とアクター毎アイテム所持を
同時に入れてしまうとエラーか不具合は出ます。
構造的にあきらかですし、実際に確認もしました。

確認した上での
・装備拡張とアクター毎アイテム所持は併用できません。
・報告していただいた不具合は併用問題でなく
 メニュー改変手順の間違いかと思います。
の2点を回答とさせていただきます。

管理人のみ閲覧できます

このコメントは管理人のみ閲覧できます

管理人のみ閲覧できます

このコメントは管理人のみ閲覧できます

Re: 不具合かも知れない報告

> F12リセット後、ステート解除をするとエラー

上記報告を修正しました。
F12リセット時のエラーは周知されており
自分も気をつけているのですが…
その対策の為の記述が漏れてしまったことが原因といえば原因です。

詳細報告していただいたのですが
つまるところケアレスミスです。すみません。

ちなみに、
> 自分なりに原因を考察
されたとのことですが、おおむね合っています。

対策とは該当メソッドのalias ~ の行末に unless $@ とつける事です。
$@ は再起動時に真を返す組み込み変数です。
詳しくは検索していただければ解ると思います。

Re: Mr

To Danyetman.

I do not think the distribution of my script on the site that is not my site to be preferable.
Only the introduction of URL is permitted by me.
I wish to express my gratitude for your question.

from 月紳士.

管理人のみ閲覧できます

このコメントは管理人のみ閲覧できます

Re: Mr

To Danyetman.

You were made disappointed the other day.
I do not intend it.

I reconsidered the treatment of the translated script.
Please read the article.
Thank you.

from 月紳士.

できれば追加してほしい機能があります

現状ではアクター同士のアイテム移動が可能ですが、
逆に移動できないアイテムを作ってほしいです。
メモ欄に<受け渡し不可>とか書くことで対応させたいです。

あとはイベントスクリプト命令になってしまうのですが
全アクターの指定アイテムIDの所持総数を指定変数に
代入できるようにしてほしいです。

同じくスクリプト命令になるでしょうがメニューの指定項目を
表示・非表示にするものもほしいです。

もしよろしければご検討ください。

Re: できれば追加してほしい機能があります

> 移動できないアイテム
> メモ欄に<受け渡し不可>とか書くことで対応させたい

Game_Actorクラスの ○indexのアイテムの譲渡可能判定
 def item_can_passed?(index, equip = true)
 デフォルトで752行あたり

 return false if equip and equipping?(index)
の次の行に

return false if /^[<<]受け渡し不可[>>]/ =~ item.note

といれればお望みの仕様になります。

> 全アクターの指定アイテムIDの所持総数を指定変数に
> 代入できるようにしてほしい

アイテムID 1のアイテムを
アクターID 2のアクターがいくつ持っているかを
変数ID 3に代入するなら
イベントコマンドスクリプトにて

item = $data_items[1]
number = $game_actors[2].carry_item_number(item)
$game_variables[3] = number

と記入すれば出来ます。
パーティー全体ならば↓

member = $game_party.members
number = 0
item = $data_items[1]
member.each{|i|number += i.carry_item_number(item)}
$game_variables[3] = number

アクター全体ならば↓

member = []
actor_size = $data_actors.size - 1
actor_size.times{|i|member.push($game_actors[i+1])}
number = 0
item = $data_items[1]
member.each{|i|number += i.carry_item_number(item)}
$game_variables[3] = n

と難しくなっていきます。

> メニューの指定項目を表示・非表示にする

Window_Actor_Item_Commandクラスの ○コマンド表示条件
 def command_display?
 デフォルトで2724行あたり
に条件を付け足してください。

case command_number から return true
の間に

when 0
return false if $game_switches[1]

の2行を入れれば
スイッチ1がONの時、項目0(使う)が表示されません。
数字を変える等していろいろ試してください。

少し希望と違う部分があったので

> メニューの指定項目を表示・非表示にする

アイテム項目の表示・非表示機能は大変うれしく利用させていただきますができればアイテム項目だけでなくメニュー項目の
アイテム・スキル・貴重品・ステータス・セーブ・ゲーム終了
も表示・非表示になるようにはできないでしょうか。

よろしくお願いいたします。

Re: アレンジ挑戦中

まず、コメントは管理人の承認制としておりますので
すぐには反映されません。
コメント、拍手の扱いについては利用規約をご覧ください。

> def equipable_item?(item) の中で、
> actor.equips[item.equip_part] を使いたいんです。

変数やメソッドは有効となる範囲が決まっています。
同じメソッドや変数が、必ずしもスクリプト内の
どこからでも参照できるわけではありません。

クラスとは何か?
スーパークラスとは何か?
サブクラスとは何か?
メソッドとは何か?
変数のスコープとは何か?
ローカル変数とは何か?
グローバル変数とは何か?

ここら辺をネット検索などで学んでみてください。
残念ながら、月紳士の方でこれらすべてのことを
詳しく説明することは出来ません。
正しく説明する自信も、その時間もありません。

各種用語と ruby をキーワードに検索すれば
詳しく説明しているサイトにあたるはずです。

それらを踏まえたうえで、
もう一度、あなたがやろうとしていること、
そしてそれに必要な手段を
再考してみてください。

そして、当スクリプトにおいて、
月紳士しか知りえないことがありましたら
こちらで説明させていただきます。

無粋な対応に感じるでしょう。しかし、
これはあなたがあなた自身に必要な
知識を得るチャンスと思ってください。

私もあなたのような改造から初めて
同じような壁にぶつかり、独学し、その結果
今のように自分が欲しいと思う機能を備えた
スクリプトを自作するまでになりました。
(まだまだですが)

是非勉強をしてみてください。

Re: 少し希望と違う部分があったので

つまり「アクター毎のアイテム所持」への要望ではなく
メニュー画面を変更されたい、という
「アクター毎のアイテム所持」とは別の要望ということでしょうか?

「アクター毎のアイテム所持をmenuに」
を使用しているなら
ほとんど同じ方法で改良出来ます。
そうでないなら私からはアドバイス出来ません。

まずはあなた自身で出来ることを試してみてください。
そしてそれに必要な知識を調べてみてください。
ご自分の好みに合わせた改良は必ず出来るはずです。

レイアウトについて

「アクター毎のアイテム所持」を使用させて頂いております。
使用するアイテム選択画面で、使用者の枠とアイテム一覧の枠が、少し重なるように中央に寄っています。
枠が重ならないレイアウトにするには、どうすればいいでしょうか。

Re: レイアウトについて

ご自分でレイアウトを改変してください。

 Scene_Actor_Item の def start(開始処理のメソッド)内で
 ウインドウを配置しているので任意の数値に座標を直してください。

ウインドウの配置に関しての詳細はこちらでは説明できません。
独学していただくか、
バックアップをとり数値をいじるなどし、色々試行錯誤してみてください。

レイアウト変更はできますか?

アクターの顔とかステ画面をなくし、
アイテム欄を横に伸ばし、5行2列に表示。
コマンド欄をアイテム欄の下にし、コマンドを縦でなく横並びにしたいです。
あと、横いっぱいでなく、中央揃えで。

こんな感じにできるのでしょうか?

Re: レイアウト変更はできますか?

好みにレイアウト改変することは自由です。
改変しやすいようにスクリプトを書いているつもりなので
自由に変更してください。

防具の<劣化>で要望

お久しぶりです。 前回のtddの件ではお世話になりました。
今回もご要望があってこちらにコメントさせていただいてます。
それで、内容なのですが防具の<劣化>で敵の通常攻撃ダメージは
劣化対象になっていますが、
スキルダメージは劣化対象に入ってないようでした。
もし、大がりな作業でなければ上記の スキルダメージも劣化対象 をご追加できないでしょうか?
よろしくお願いします。

Re: 防具の<劣化>で要望

Ver.1.20より
スキル・アイテムに関しても、防具がダメージ軽減をする場合は
劣化動作を起こすよう、修正しました。

防具がダメージを軽減する場合とは
具体的に言えば、打撃関係度が 1 以上で、
防御力無視でないスキル・アイテムによる攻撃です。

Re: 防具の<劣化>で要望

スクリプトの更新確認しました。
早いご対応ありがとうございます。
希望通りの仕上がりで助かりました。
スタックシステムの方も、より明細になって製作の幅がきくようになってますね。
お忙しいでしょうがサイト運営がんばってください。
また寄らせていただきます。

レイアウトについて

 スクリプトの初心者ではありますが、(無謀にも)このスクリプトに少しだけ手を加えようと、試行錯誤しながら、頑張っているところです。
 それは、回避率などのステータスを、ショップ画面や装備画面に反映させようと試みているのです。
 表示できそうなところまでいきましたが、ステータス枠がタテ長になった分、問題点がでてきました。

① 「ショップ画面」
  アイテム選択枠のタテ幅がひろくて、ステータスが見れない。
  そもそもステータス枠が下に下がりすぎていて、最後まで見えない。
 → アイテム枠のタテ幅を短くできないか。
 → ステータス枠の位置を上にもってこれないか。

② 「装備画面」
  コマンド枠が中央にあるため、ステータス枠を一部かくしている。
 →コマンド枠を下に持ってこれないか。

 どのあたりをさわれば、それが可能になるのか、アドバイスをください。
 お願いします。

 このサイトのスクリプトは秀作ぞろいでよく利用させていただいております。
 バージョンアップや新しいスクリプトが出るのを楽しみにしています。頑張ってください。

Re: レイアウトについて

ご利用ありがとうございます。
質問も具体的で、こちらも答えやすいです。

> ①「ショップ画面」

class Scene_AIS_Shop 内の、○開始処理 (def start)が
ショップのウインドウレイアウトを決めている部分です。

> →アイテム枠のタテ幅を短くできないか。

アイテムウインドウの位置決めは以下の部分。
@item_window = Window_Actor_Item.new(262, 124, 272, 10, @actor)
()内は (X座標、Y座標、幅、行数、情報を開くアクター) です。
10 のところを任意の数字に減らしてください。

>  → ステータス枠の位置を上にもってこれないか。

装備ウインドウの位置決めは以下の部分。
@equip_window = Window_Actor_Item_Equip.new(20, 258, @actor)
()内は (X座標、Y座標、情報を開くアクター) です。
上へずらすならY座標を減らします。

> ② 「装備画面」

装備は class Scene_Actor_Item 内の同じく
○開始処理 (def start) がウインドウレイアウトを決めている部分です。

> →コマンド枠を下に持ってこれないか。

コマンドウインドウの位置決めは以下の部分。
@command_window = Window_Actor_Item_Command.new(14, 225)
()内は (X座標、Y座標) で、下げるならY座標を増やす、です。

新たな疑問が生まれるかもしれませんが、
まずはここで説明したことを元に、色々試してみてください。
バックアップをとれば失敗はありません。

Re: レイアウトについて

アドバイスありがとうございます。
だいたい上手くいきました。

ただ、次の点がうまくいきません。

> →アイテム枠のタテ幅を短くできないか。
アイテムウインドウの位置決めは以下の部分。
@item_window = Window_Actor_Item.new(262, 124, 272, 10, @actor)
()内は (X座標、Y座標、幅、行数、情報を開くアクター) です。10 のところを任意の数字に減らしてください。

・・・「10」のところの数を、「5」とかに減らしてみたのですが、私の見た目では変更点がわかりません。枠が小さくなりません。また、「5」にしても、6行以上表示されます)。

お手数ですが、再度、アドバイスをお願いします。

あと、これは後で気がついたことですが、アイテムの詳細の画面ですが、「他能力UP」という表示がありますが、どうも命中率とかには反映されて表示されていないようです。反映させるのは難しいでしょうか?

お忙しいところ申し訳ありませんが、なにとぞ、よろしくお願いします。

Re: Re: レイアウトについて

修正したいのはアイテム販売側のウインドウということですよね。

> →アイテム枠のタテ幅を短くできないか。
正しくは

販売ウインドウの位置決めは以下の部分。
@buy_window = Window_AIS_ShopBuy.new(30, 46, 8)
()内は (X座標、Y座標、行数) です。
8のところを任意の数字に減らしてください。

でしょうか?

他能力値UPの描画は
class Window_Actor_Item_Analyze 内の
○リフレッシュ (def refresh) の
#- 装備時の向上能力値の描画
以降でおこなわれています。

if @item.def > 0 or @item.spi > 0 or @item.agi > 0

という行が二つありますがそこを順に

if @item.def > 0 or @item.spi > 0 or @item.agi > 0 or @item.hit > 95

if @item.def > 0 or @item.spi > 0 or @item.agi > 0 or @item.eva > 0

とすれば良いのではないかと思います。

ただ、命中率は個々で別々の値をいれるので
何をもってUPと言えるのかわかりません。
素手が95なので、それより高いものはUPでしょうか。
仮にそうだとして、@item.hit > 95 としてみました。

検証できませんが、以上です。

Re: Re: レイアウトについて

ちなみに
> 命中率とかには反映されて表示されていないようです
これは私としては仕様として意図しております。

命中率、回避率の変動は
装備画面にもステータス画面にも表示されず、
製作者側は知っていても
プレイヤーが知ることは出来ません。
いわいる隠し要素です。

アクター毎アイテム所持もそれに準じているので
“他能力値UP”にも当然反映させていません。

アイテムを減らす時の不具合報告

おじゃまします。
このすばらしい素材を使わせてもらっています。めちゃめちゃ助かっています。
そしで不具合報告なのですが、Ver1.22でアイテムを減らすとき、その減らす数に関係なく、そのアイテムが全て減らされるようです。

"アクター毎のアイテム所持"の1850、1859、1869行目で
result += 1
と記述がありますが、nはマイナスなので
result -= 1
とすると直るのかなと思います。

ご確認くださいませー

管理人のみ閲覧できます

このコメントは管理人のみ閲覧できます

Re: アイテムを減らす時の不具合報告

さば缶様、ご無沙汰してます。
すみません、そして御試用ありがとうございます。
報告の件、修正しました。

ご指摘の通りでしたが、
> nはマイナスなので
こっちの方を直してnの絶対値をとりました。

不具合報告について

不具合、エラーのご報告、大変ありがたく思います。非常に助かっております。
そんな中で言いづらいことなのですが…

不具合・エラー報告は、出来る限り詳しく報告願います。
・どんな状況でのエラーかの詳細(戦闘中に、とか大事です)
・なにやらエラーが出る、とかでは困ります

色々と曖昧な報告ですと
こちらが報告に該当するエラーを再現するのに時間がかかるだけでなく、
場合によっては再現できずに終わる可能性も高くなりますし、
なにより、ご報告いただいたエラーを修正できたのか
(別のエラーの修正だったのか)それが結局わかりません。

そして、利用規約は読みましたか?
いま一度、読んでいただいた方が良いのかもしれません。
ご協力、なにとぞ宜しくお願いします。

この記事はコメントログとして残しています。

※ コメント用記事ではありません!

こちらにはコメントをしないでください。
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。