ツクールVX Ace 初心者救済、質問スレ Part.2 [無断転載禁止]©2ch.net
レス数が1000を超えています。これ以上書き込みはできません。
スクリプトやイベントの組み方などが苦手な人を救済するスレです。
このスレが繁栄する事はAceの繁栄につながり、過疎スレとなるとAceの衰退につながります。
質問者を煽ったり、馬鹿にするような書き込みはしないでください。
あまり酷い場合はアクセス禁止依頼を出します。 >>951
15年近く昔のソフトよりは重いのは普通だね。
PCスペック低いんじゃない >>951
最近出たアプデパッチで半分の軽さになって問題がなくなったのでこれから大移動が始まるらしい 3Dのゲームがぬるぬる動こうがツクールは重いからな 2年前からMVに移行するって言われてたけど結局あまり動きないしな 重い、いつ止まるかわからないイメージが定着しちゃったから少なくともMVで長編作る人なんていないだろう
MVはアツマールで短編やネタ寄りのゲームで活躍するだろう 製作者じゃなくて初心者プレイヤーの質問なんですけどVXace製ゲームでたまに起動しようとした途端
「問題が発生したためGame.exeを終了します」と出て落ちるものがあるんですがどのような原因が考えられますか?
ちなみに正常に起動できるゲームの方が圧倒的に多いです VXAceの質問です。
@武器に複数回攻撃の特徴をつけたいのですが、攻撃追加回数を増やすとその回数だけアニメーションが表示されます。
アニメーションは1回だけ表示した状態で複数回攻撃できるようにしたいのですが、どこをいじればよいですか?
A武器に複数回攻撃の特徴をつけたいのですが、特に、攻撃追加回数を乱数にしたいです。
具体的には、50%の確率で攻撃追加回数1、という感じです。
どこをいじればよいですか? その武器のみに適用させる場合はスクリプト素材を新たに製作しなければならなくて手間がかかる
通常攻撃および攻撃追加回数の仕様変更で構わない場合は以下の箇所を変更すればよい
@ Scene_Battleの585行目を
show_animation(@subject.attack_skill_id == item.id ? [targets[0]] : targets, item.animation_id)
に変更
A Game_BattlerBaseの342行目を
rand([features_sum_all(FEATURE_ATK_TIMES), 0].max + 1)
に変更 >>960
ありがとうございます。
@は仕様変更でよかったので、そのまま活用させていただきます。
Aは武器ごと(正確には武器タイプごと)に適用したいので、スクリプトを勉強して自分で作ってみます。 一つのマップに3つ建物が建てられるところがあって
どの場所にも武器屋、防具屋、道具屋等建てる建物が選べる小さな町作り系を考えてるのですが
スイッチとピクチャで作ろうかなと思いましたが他に方法はありますか
一応平地のマップを用意して武器屋のスイッチが押されたら建物ピクチャを表示させるとか考えていましたがこれだと通行設定とかがばがばですよね 3つくらいだったら全パターンの違うMAPを用意するとか・・? >>961です。
Aは自己解決しました。
公開されているRGSS3素材をいくつか併用することで武器ごとに攻撃追加回数の乱数設定ができるようになりました。 BGMのフェードアウトはあるけど、フェードインって無いよね?
自力でウェイト用いてだんだん大きくしていくとかしか出来んのかねぇ…この間動作が止まるから並列処理させるしかなくなっちゃうけど あれ、なかったっけと思って確認したら無かったわ
2000にはあったのに >>967
「RGSS3 BGM フェードイン」でググると色々書いてあった
NGワードに引っかかって書き込めないんだけどね http://etolier.webcrow.jp/material/vxskin.html
ここでシンプル枠をダウンロードしてウインドウに設定したんだけど実際にゲームを始めるとサンプルと違って中が白じゃなく水色っぽくなってしまう・・・
サンプルと同じようにするにはどうしたらいいですか? ウインドウカラーを真っ白にしてもサンプル通りにはならないですね・・・
透過しないようにってどうするんだろう class Window_Base < Window
alias _initialize initialize
def initialize(x, y, width, height)
_initialize(x, y, width, height)
self.back_opacity = 255
end
end 名前が競合しそうだったから変更
↓を素材に追加
class Window_Base < Window
alias hogehogehogeeeeee_initialize initialize
def initialize(x, y, width, height)
hogehogehogeeeeee_initialize(x, y, width, height)
self.back_opacity = 255
end
end マルチポストはマナー違反だってそれ昔から言われてる事だから そこはスクリプトじゃなくて画像のアルファ値弄る方がいい気もするが 画像製作者がback_opacityを操作するように説明しているわけだが VXAceでのウィンドウ非アクティブ時についてお聞きしたいです
非アクティブ時はBGMも動作も停止するものと思ってエンディングを作ったのですが、どうやら非アクティブ時は動作だけが停止してBGMは流れたままみたいです
エンドロールの終わるタイミングに合わせてエンディング曲も終わる調整にしていたので、プレイヤーがウィンドウを非アクティブにしてしまうとエンドロールとエンディングがずれてしまい非常に困っています
非アクティブ時に動作を止めてBGMも止める、あるいは動作を動かしてBGMも動かす方法はないものでしょうか? >>982
それしかなさそうですね……
ありがとうごさまいます VXAceの敵の設定について質問です
データベースで設定した以外の技を恒久的に敵に覚えさせたいのですが、どうすればいいですか?
できれば能力値もデータベースで設定した値から変更させたいです。
データが少なければそれぞれの能力値の敵と敵グループを大量にデータベース登録して変数で出現する敵グループを変更すればいいのですが、
あまりにもデータの数が多くなりすぎる(特に敵グループのデータ)ため、データベースに登録する以外の方法で教えていただきたいです。 スクリプトの知識がないとわかりづらいと思う
↓複数の敵を一括変更 module DataManager
class << self
alias alias_load_database load_database
def load_database
alias_load_database
#◆操作する敵に1〜3(スライム〜ホーネット)を指定
(1 .. 3).each{|i|
enemy = $data_enemies[i]
#▼指定した敵の能力を変更
enemy.params = [1, 9999, 120, 40, 8, 8, 10, 10] #一括変更(HP, MP, 攻, 防, 魔攻, 魔防, 敏, 運)
enemy.params[0] = 20 #HPのみを20に変更
enemy.params[2] += 6 #攻に6加算
#▼習得スキルをすべて忘却する場合に記述
enemy.actions = []
#▼スキル習得
action = RPG::Enemy::Action.new
action.skill_id = 28 #スキルの ID28: ヒールV
action.condition_type = 0 #行動条件のタイプ(この辺の詳細は RPG::Enemy::Action でヘルプを検索)
action.condition_param1 = 0 #行動条件のパラメータ
action.condition_param2 = 0 #行動条件のパラメータ
action.rating = 5 #優先度 (1..10)
enemy.actions.push(action) #習得スキルに追加
#▼スキル忘却
enemy.actions.delete_if{ |skill| skill.skill_id == 28 } #ID28のスキルを忘却
}
end
end
end module DataManager
class << self
alias alias_load_database load_database
def load_database
alias_load_database
#▼スライムのステータスを一括変更
$data_enemies[1].params = [1, 9999, 120, 40, 8, 8, 10, 10]#(HP, MP, 攻, 防, 魔攻, 魔防, 敏, 運)
#▼こうもりのステータスを変更
$data_enemies[2].params[0] = 99 #HPを99に変更
$data_enemies[2].params[1] += 20 #MPを20増加
#▼ホーネットのスキル習得
action = RPG::Enemy::Action.new
action.skill_id = 28 #スキル28はヒールV
$data_enemies[3].actions.push(action)
#▼大ぐものスキル忘却
$data_enemies[4].actions.delete_if{ |skill| skill.skill_id == 28 }#ヒールVを覚えていた場合は忘れる
#▼大ねずみのスキルをすべて忘却
$data_enemies[5].actions = []
end
end
end 特徴は面倒くさかったので省いた
必要なら調べるけど >>989
ありがとうございます。
>>986>>988は参考になりました。
イベントのスクリプトを使って直接書き込んで、あとは変数で制御しようと思います。
特徴はGame_BattlerBaseの定数がcode、あとはデータベースの中にある設定に準じて変更すればいい感じですかね。
確認ですが、例えば
$data_enemies[1].features.push(RPG::BaseItem::Feature.new(34,1,0)) #スライムの攻撃追加回数を1に設定
で大丈夫そうですか? 先ほど確認したところ、攻撃追加回数の設定は
@code = 34
@data_id = 0 #未使用
@value=0 #初期値
でした。
>>990を訂正しますが、
$data_enemies[1].features.push(RPG::BaseItem::Feature.new(34,0,1)) #スライムの攻撃追加回数を1に設定
が間違っているのか、スクリプトコマンドで設定しても機能しません(エラーではないようです)。
訂正箇所がありましたらご教示ください。 >>991ですが自己解決しました。
内容に間違いはありませんでしたが、単純に、スクリプトコマンドの1行が長すぎました。
細かく刻んで設定したところ正常に作動しました。 マップを作るときにA層のタイルの上にB層のタイルを置いて
その後にA層を塗りつぶしで変更しようとするとB層のタイルを置いてるところが変わりません
(例えば緑の草むらに木が生えてる状態を茶色い土に木が生えてるようにしたい)
B層のタイルにかかわらずA層が同じ部分をまとめて塗りつぶすことってできないんでしょうか >>994
ありがとうございます
一個ずつ地道に変えていくしかないんですね
Aのタイル変えるとBのも一緒に消えちゃうし微妙に不便だなー 質問お願いします
特徴「TPチャージ率*500%」を2つ付けると、実質「TPチャージ率*2500%」になりますが、
これを「TPチャージ率*1000%」にする方法ってありますでしょうか? このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
life time: 514日 0時間 58分 22秒 2ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 2ちゃんねる専用ブラウザからの広告除去
★ 2ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
https://premium.2ch.net/
▼ 浪人ログインはこちら ▼
https://login.2ch.net/login.php レス数が1000を超えています。これ以上書き込みはできません。