スクリプトやイベントの組み方などが苦手な人を救済するスレです。
このスレが繁栄する事はAceの繁栄につながり、過疎スレとなるとAceの衰退につながります。
質問者を煽ったり、馬鹿にするような書き込みはしないでください。
あまり酷い場合はアクセス禁止依頼を出します。
探検
ツクールVX Ace 初心者救済、質問スレ Part.2 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
2016/04/07(木) 14:09:05.15ID:lSIBMvk5
2017/04/13(木) 21:32:35.43ID:m/XZKNCt
>>708
雑魚戦はなく、固定敵でそれぞれオンオフを切り替えたいんです、アドバイスありがとうございます、試してみます!
雑魚戦はなく、固定敵でそれぞれオンオフを切り替えたいんです、アドバイスありがとうございます、試してみます!
2017/04/14(金) 08:49:49.80ID:nnUBFrul
サイドビューのSceneをScene_Battleのサブクラスにして戦闘開始時に飛ぶScene自体を分岐しないとダメ
2017/04/18(火) 19:50:10.55ID:T+I49vZz
ワールドマップのランダムエンカウントに特定のスイッチや変数が入ってる時のみエンカウントって出来るのかな
具体的にやりたいのは昼夜でエンカウントが変わるようにしたいんだがこれスクリプト使わないとダメかな?
具体的にやりたいのは昼夜でエンカウントが変わるようにしたいんだがこれスクリプト使わないとダメかな?
2017/04/18(火) 19:55:10.69ID:bo6qgQn3
マップ2つ作ってスイッチで入れ替え
2017/04/18(火) 19:57:44.67ID:bo6qgQn3
あるいはエンカウント自体をイベントで作るかだな
2017/04/18(火) 20:02:54.23ID:5fvAREPf
どうしてもランダムでやりたいなら>>712だろうな
イベント差し込みたいならシンボルにして透明にしたらいいと思うけど
イベント差し込みたいならシンボルにして透明にしたらいいと思うけど
2017/04/19(水) 23:09:49.45ID:XBAyD5i7
システム画像について分からないんですが
Window画像の左上が背景色になるのはわかったんですが左上を黒に塗っても青いままなんですが何故でしょうか?
Window画像の左上が背景色になるのはわかったんですが左上を黒に塗っても青いままなんですが何故でしょうか?
2017/04/19(水) 23:12:37.86ID:XBAyD5i7
ちなみに真っ白にしても薄い水色になります
2017/04/20(木) 04:19:01.67ID:j3tZopxl
ちゃんとインポートした?
2017/04/20(木) 04:29:29.51ID:j3tZopxl
ごめん716で変わってるのか
じゃあツール>データベース>システム>ウィンドウカラーを変更してみて
じゃあツール>データベース>システム>ウィンドウカラーを変更してみて
2017/05/03(水) 18:25:28.65ID:GoaaxMPD
GW中に製作してるやつはいないのか??
2017/05/03(水) 22:43:57.57ID:pcjHcsls
ここにいるぞ!
2017/05/04(木) 00:16:28.93ID:/vavT6Ry
バグ地獄なう
2017/05/04(木) 12:27:18.40ID:IcwmZARS
Game_Interpreterの追加定義として、
スイッチがOFFの時にスイッチをONにし、対応するキャラクタの名前を表示する
スクリプトを作っています。
しかし、実行しても処理の最後のキャラクタしか名前が呼び出されません。
何が問題なのでしょうか?
ソースは以下になります。
変数定義は、
i, スイッチ番号指定用の変数
j, アクター番号指定用の変数
game_variables[12],指定したアクター番号を入れておく変数、制御文字で呼び出す
def test
i = 82;j = 12;
$game_variables[12] = j;
while j <= 19;
actor = $game_actors[j];
if $game_party.members.include?(actor);
if $game_switches[i] == false;
$game_switches[i] = true;
$game_message.add("\\N[\\V[12]]が出現")
end
end
i = i + 1;
j = j + 1;
$game_variables[12] = $game_variables[12] + 1;
end
自分ひとりで考えても、解決策が浮かびませんでした。
よろしくお願いします……。
スイッチがOFFの時にスイッチをONにし、対応するキャラクタの名前を表示する
スクリプトを作っています。
しかし、実行しても処理の最後のキャラクタしか名前が呼び出されません。
何が問題なのでしょうか?
ソースは以下になります。
変数定義は、
i, スイッチ番号指定用の変数
j, アクター番号指定用の変数
game_variables[12],指定したアクター番号を入れておく変数、制御文字で呼び出す
def test
i = 82;j = 12;
$game_variables[12] = j;
while j <= 19;
actor = $game_actors[j];
if $game_party.members.include?(actor);
if $game_switches[i] == false;
$game_switches[i] = true;
$game_message.add("\\N[\\V[12]]が出現")
end
end
i = i + 1;
j = j + 1;
$game_variables[12] = $game_variables[12] + 1;
end
自分ひとりで考えても、解決策が浮かびませんでした。
よろしくお願いします……。
2017/05/04(木) 16:59:11.66ID:W2z2SEGs
色々と無駄な書き方が多いけど実データと併せて見ない事にはなんとも。
「処理の最後のキャラクタしか名前が呼び出されません」という挙動になる理由はここからは読み取れない。
文意を読み取って最適化するとこういう感じかな。
指定のアクターIDからアクターID19番目までを対象に
現在パーティに含まれているかチェックしてメッセージキューに詰め込む、って事で良いんだよね。
class Game_Interpreter
def test
aid_start = 12
aid_last = 19
sid_base = 70
(aid_start..aid_last).each{|actor_id|
actor = $game_actors[actor_id]
next unless $game_party.members.include?(actor)
next if $game_switches[sid_base + actor_id]
$game_switches[sid_base + actor_id] = true
$game_message.add(actor.name + "が出現")
}
end
end
「処理の最後のキャラクタしか名前が呼び出されません」という挙動になる理由はここからは読み取れない。
文意を読み取って最適化するとこういう感じかな。
指定のアクターIDからアクターID19番目までを対象に
現在パーティに含まれているかチェックしてメッセージキューに詰め込む、って事で良いんだよね。
class Game_Interpreter
def test
aid_start = 12
aid_last = 19
sid_base = 70
(aid_start..aid_last).each{|actor_id|
actor = $game_actors[actor_id]
next unless $game_party.members.include?(actor)
next if $game_switches[sid_base + actor_id]
$game_switches[sid_base + actor_id] = true
$game_message.add(actor.name + "が出現")
}
end
end
2017/05/04(木) 18:51:41.75ID:unLfD/Gg
addした時点で制御文字が変換されるわけじゃないだけ
2017/05/07(日) 00:29:43.67ID:kSLYGRgP
マップ名表示を画面に出し続けるにはどうすればよいでしょうか?
2017/05/07(日) 00:34:34.31ID:UO6quf4X
ピクチャで表示すればいいんじゃないか
2017/05/07(日) 01:33:26.34ID:1odeMLYV
Scene_Mapのstart時に@map_name_window.openする
Window_MapNameのupdateで@show_countの減算をなくす
class Scene_Map < Scene_Base
alias _start start
def start
_start
@map_name_window.open
#~ @map_name_window.contents_opacity = 255
end
end
class Window_MapName < Window_Base
alias _update update
def update
_update
@show_count += 1 if @show_count > 0 && $game_map.name_display
end
end
Window_MapNameのupdateで@show_countの減算をなくす
class Scene_Map < Scene_Base
alias _start start
def start
_start
@map_name_window.open
#~ @map_name_window.contents_opacity = 255
end
end
class Window_MapName < Window_Base
alias _update update
def update
_update
@show_count += 1 if @show_count > 0 && $game_map.name_display
end
end
2017/05/07(日) 17:09:23.75ID:kSLYGRgP
ありがとうございます!
729名無しさん@お腹いっぱい。
2017/05/07(日) 17:35:53.45ID:FimVpRP8 選択肢について質問なのですが
とある同人ゲームで、下図のように
通常メッセージウィンドウ枠で横二列、縦に複数の選択肢を表示してるのですが
┌────────────────┐
| 少年A ▽少年B |
| おねえさん おじさん |
| 少女A 少女B |
| じいちゃん ばあちゃん |↓下にスクロールできます
└────────────────┘
色々ググってみたり、その同人ゲーム製作クレジットの
借用スクリプト先を探してみたのですがそれらしいものが見つかりませんでした。
やり方もしくは配布されているスクリプトを知っている方がいましたら
教えてもらえないしょうか?
とある同人ゲームで、下図のように
通常メッセージウィンドウ枠で横二列、縦に複数の選択肢を表示してるのですが
┌────────────────┐
| 少年A ▽少年B |
| おねえさん おじさん |
| 少女A 少女B |
| じいちゃん ばあちゃん |↓下にスクロールできます
└────────────────┘
色々ググってみたり、その同人ゲーム製作クレジットの
借用スクリプト先を探してみたのですがそれらしいものが見つかりませんでした。
やり方もしくは配布されているスクリプトを知っている方がいましたら
教えてもらえないしょうか?
2017/05/07(日) 19:31:06.26ID:LcvOhMNH
そのメッセージウィンドウ枠とやらが上側に表示されてたなら
十中八九ただのイベントコマンド
イベントコマンドのタブ1をよく見て閃くかツール違うけどMVの新機能講座を見るか
サンプルゲームのきみは勇者じゃない!2 〜ニルスのお仕事〜あたりをやれば分かる
十中八九ただのイベントコマンド
イベントコマンドのタブ1をよく見て閃くかツール違うけどMVの新機能講座を見るか
サンプルゲームのきみは勇者じゃない!2 〜ニルスのお仕事〜あたりをやれば分かる
731名無しさん@お腹いっぱい。
2017/05/08(月) 14:16:18.63ID:gmaAh1Ra2017/05/13(土) 02:45:21.96ID:eBVL26lr
例:◯G→\◯
のように通貨単位の表示を右側ではなく左側にしたいのですが、スクリプトのどこをいじればよいでしょうか?
のように通貨単位の表示を右側ではなく左側にしたいのですが、スクリプトのどこをいじればよいでしょうか?
2017/05/13(土) 09:14:24.15ID:QwLRAtHJ
Window_Baseのdraw_currency_value
2017/05/13(土) 10:04:29.94ID:eBVL26lr
>>733
ありがとうございます!
申し訳ありませんが、スクリプトに関して無知であり、draw_currency_valueの部分をどのようにいじれば通貨単位を左に変更できるのか、よろしければ教えていただけないでしょうか?
ありがとうございます!
申し訳ありませんが、スクリプトに関して無知であり、draw_currency_valueの部分をどのようにいじれば通貨単位を左に変更できるのか、よろしければ教えていただけないでしょうか?
2017/05/13(土) 11:04:31.24ID:Z0GUAEqc
敵の能力値を変数で決めることって出来る?
攻撃力:v1とか敏捷性v1 * 2とか
あとこれって魔物図鑑でも反映される?
攻撃力:v1とか敏捷性v1 * 2とか
あとこれって魔物図鑑でも反映される?
2017/05/13(土) 11:38:50.64ID:QwLRAtHJ
>>734
def draw_currency_value(value, unit, x, y, width)
cx = text_size(value).width
change_color(normal_color)
draw_text(x, y, width, line_height, value, 2)
change_color(system_color)
draw_text(x, y, width - cx - 2 , line_height, unit, 2)
end
def draw_currency_value(value, unit, x, y, width)
cx = text_size(value).width
change_color(normal_color)
draw_text(x, y, width, line_height, value, 2)
change_color(system_color)
draw_text(x, y, width - cx - 2 , line_height, unit, 2)
end
2017/05/13(土) 11:54:31.13ID:QwLRAtHJ
>>735スクリプトコマンドで
$data_enemies[id].params[pn] = $game_variables[vn]
3:ホーネットの攻撃力を変数100の値に設定する例
$data_enemies[3].params[2] = $game_variables[100]
id: 敵番号 初期状態では1:スライム 2:こうもり
pn: ヘルプより
params
能力値。以下の ID を添字とする整数の配列です。
0 : 最大HP
1 : 最大MP
2 : 攻撃力
3 : 防御力
4 : 魔法力
5 : 魔法防御
6 : 敏捷性
7 : 運
vn: 変数番号
>あとこれって魔物図鑑でも反映される?
スクリプトによる 自分で確かめて
$data_enemies[id].params[pn] = $game_variables[vn]
3:ホーネットの攻撃力を変数100の値に設定する例
$data_enemies[3].params[2] = $game_variables[100]
id: 敵番号 初期状態では1:スライム 2:こうもり
pn: ヘルプより
params
能力値。以下の ID を添字とする整数の配列です。
0 : 最大HP
1 : 最大MP
2 : 攻撃力
3 : 防御力
4 : 魔法力
5 : 魔法防御
6 : 敏捷性
7 : 運
vn: 変数番号
>あとこれって魔物図鑑でも反映される?
スクリプトによる 自分で確かめて
2017/05/13(土) 12:01:21.55ID:QwLRAtHJ
訂正>>737は没案で
セーブされない
セーブされない
2017/05/13(土) 12:11:35.09ID:e4ezz7Wy
試しにやってみたけどエラーもでなければ適用もされてないなあ
戦闘テストじゃだめ?
戦闘テストじゃだめ?
2017/05/13(土) 12:33:14.90ID:QwLRAtHJ
>>739 いやスクリプトコマンドでできると思うけど没案なのでなかったことにしてから以下のスクリプト導入して
# 使用方法
# 敵キャラのメモ欄に以下のような書式で記述
# <攻撃力: v[1] * 99>
# <防御力: v[2]>
# など
class Game_Enemy < Game_Battler
def param_base(param_id)
v = $game_variables
case param_id
when 0; enemy.params[param_id] = eval($1) if enemy.note =~ /\<最大HP: (.*)\>/
when 1; enemy.params[param_id] = eval($1) if enemy.note =~ /\<最大MP: (.*)\>/
when 2; enemy.params[param_id] = eval($1) if enemy.note =~ /\<攻撃力: (.*)\>/
when 3; enemy.params[param_id] = eval($1) if enemy.note =~ /\<防御力: (.*)\>/
when 4; enemy.params[param_id] = eval($1) if enemy.note =~ /\<魔法力: (.*)\>/
when 5; enemy.params[param_id] = eval($1) if enemy.note =~ /\<魔法防御: (.*)\>/
when 6; enemy.params[param_id] = eval($1) if enemy.note =~ /\<敏捷性: (.*)\>/
when 7; enemy.params[param_id] = eval($1) if enemy.note =~ /\<運: (.*)\>/
end
enemy.params[param_id]
end
end
# 使用方法
# 敵キャラのメモ欄に以下のような書式で記述
# <攻撃力: v[1] * 99>
# <防御力: v[2]>
# など
class Game_Enemy < Game_Battler
def param_base(param_id)
v = $game_variables
case param_id
when 0; enemy.params[param_id] = eval($1) if enemy.note =~ /\<最大HP: (.*)\>/
when 1; enemy.params[param_id] = eval($1) if enemy.note =~ /\<最大MP: (.*)\>/
when 2; enemy.params[param_id] = eval($1) if enemy.note =~ /\<攻撃力: (.*)\>/
when 3; enemy.params[param_id] = eval($1) if enemy.note =~ /\<防御力: (.*)\>/
when 4; enemy.params[param_id] = eval($1) if enemy.note =~ /\<魔法力: (.*)\>/
when 5; enemy.params[param_id] = eval($1) if enemy.note =~ /\<魔法防御: (.*)\>/
when 6; enemy.params[param_id] = eval($1) if enemy.note =~ /\<敏捷性: (.*)\>/
when 7; enemy.params[param_id] = eval($1) if enemy.note =~ /\<運: (.*)\>/
end
enemy.params[param_id]
end
end
2017/05/13(土) 13:23:07.95ID:QwLRAtHJ
以下のスクリプトもくっつけておいたほうが良いな
class Scene_Map < Scene_Base
alias aaaa_start start
def start
aaaa_start
$data_enemies.each{|enemy|
next if enemy.nil?
change_enemy_params(enemy)
}
end
def change_enemy_params(enemy)
v = $game_variables
enemy.params[0] = eval($1) if enemy.note =~ /\<最大HP: (.*)\>/
enemy.params[1] = eval($1) if enemy.note =~ /\<最大MP: (.*)\>/
enemy.params[2] = eval($1) if enemy.note =~ /\<攻撃力: (.*)\>/
enemy.params[3] = eval($1) if enemy.note =~ /\<防御力: (.*)\>/
enemy.params[4] = eval($1) if enemy.note =~ /\<魔法力: (.*)\>/
enemy.params[5] = eval($1) if enemy.note =~ /\<魔法防御: (.*)\>/
enemy.params[6] = eval($1) if enemy.note =~ /\<敏捷性: (.*)\>/
enemy.params[7] = eval($1) if enemy.note =~ /\<運: (.*)\>/
end
end
class Scene_Map < Scene_Base
alias aaaa_start start
def start
aaaa_start
$data_enemies.each{|enemy|
next if enemy.nil?
change_enemy_params(enemy)
}
end
def change_enemy_params(enemy)
v = $game_variables
enemy.params[0] = eval($1) if enemy.note =~ /\<最大HP: (.*)\>/
enemy.params[1] = eval($1) if enemy.note =~ /\<最大MP: (.*)\>/
enemy.params[2] = eval($1) if enemy.note =~ /\<攻撃力: (.*)\>/
enemy.params[3] = eval($1) if enemy.note =~ /\<防御力: (.*)\>/
enemy.params[4] = eval($1) if enemy.note =~ /\<魔法力: (.*)\>/
enemy.params[5] = eval($1) if enemy.note =~ /\<魔法防御: (.*)\>/
enemy.params[6] = eval($1) if enemy.note =~ /\<敏捷性: (.*)\>/
enemy.params[7] = eval($1) if enemy.note =~ /\<運: (.*)\>/
end
end
2017/05/13(土) 19:48:09.66ID:eBVL26lr
2017/05/17(水) 05:50:54.61ID:cQT7IG8h
戦闘画面でバトルログ・メッセージを全面的に廃止したいのですが、どうすればいいですか?
vx aceのデフォルトだと戦闘経過が文章で表示されますがアレを全て消したいです
・モンスターとエンカウントしたとき「〇〇(モンスター名)が出現した!」みたいなメッセージが出ず、そのまま戦闘に突入する
・敵・味方が行動した時、メッセージ(エリックの攻撃! スライムに350のダメージを与えた! スライムは倒れた! みたいな文章)が表示されないようにする
・戦闘勝利後、(〇〇Gを獲得 〇〇の経験値を獲得!みたいな文章を消す
ドラクエではなくファイナルファンタジーのような戦闘画面が理想です
何としても実現したいのでどなたか方法をお願いします!
vx aceのデフォルトだと戦闘経過が文章で表示されますがアレを全て消したいです
・モンスターとエンカウントしたとき「〇〇(モンスター名)が出現した!」みたいなメッセージが出ず、そのまま戦闘に突入する
・敵・味方が行動した時、メッセージ(エリックの攻撃! スライムに350のダメージを与えた! スライムは倒れた! みたいな文章)が表示されないようにする
・戦闘勝利後、(〇〇Gを獲得 〇〇の経験値を獲得!みたいな文章を消す
ドラクエではなくファイナルファンタジーのような戦闘画面が理想です
何としても実現したいのでどなたか方法をお願いします!
2017/05/17(水) 05:59:31.13ID:P/wV51kS
金払え
2017/05/17(水) 06:10:41.44ID:U5QI3o/+
BattleManagerモジュールの$game_message.addを全部コメントアウトすればいいんじゃないかな
それでも余計なメッセージが出たらVocabモジュールでそのメッセージの定数を調べて全文検索して同じくaddしてる所をコメントアウト
それでも余計なメッセージが出たらVocabモジュールでそのメッセージの定数を調べて全文検索して同じくaddしてる所をコメントアウト
2017/05/17(水) 06:35:45.62ID:cQT7IG8h
2017/05/18(木) 12:49:47.93ID:kAI9Fieu
VXです。
ドラクエのりりょくのつえのように、通常攻撃でMPが減るような武器は作れますか?
ドラクエのりりょくのつえのように、通常攻撃でMPが減るような武器は作れますか?
2017/05/18(木) 13:22:03.31ID:RYCPXOk7
「武器依存スキル(RGSS2)」で検索して出る所のならどうかな?
2017/05/19(金) 16:15:58.16ID:9vnQWgzB
>>748
ありがとうございます
「スキル使用者の装備している武器によってスキルの性能を変化させることができます」との事なので
通常攻撃に適用できるかわかりませんが、このスクリプトで一度試してみようと思います
ありがとうございます
「スキル使用者の装備している武器によってスキルの性能を変化させることができます」との事なので
通常攻撃に適用できるかわかりませんが、このスクリプトで一度試してみようと思います
750名無しさん@お腹いっぱい。
2017/05/25(木) 19:30:39.36ID:M4Y6JxfB とあるイベントでゲームオーバーになって、そのセーブデータを開いたら別のイベントが始まってセーブデータが壊れるみたいなのはどうやれば出来るんでしょうか?
1度でも見たらはじめからスタートしても別のセーブデータをロードしても二度と見られないイベントとか、セーブデータじゃなくゲーム本体に影響をおこすイベントの作り方が知りたいです
1度でも見たらはじめからスタートしても別のセーブデータをロードしても二度と見られないイベントとか、セーブデータじゃなくゲーム本体に影響をおこすイベントの作り方が知りたいです
2017/05/25(木) 19:42:34.93ID:C+BLo7Xk
オートセーブのスクリプト使って
ロードした瞬間ゲームオーバーになるところでオートセーブさせればいいのでは?
セーブデータ壊すとかそういうの無理ではないかと。
セーブしないでそのセーブデータに影響させる変数とか宣言できるのかは知らないけど
出来たとしたら他のセーブデータすべてに影響する内容になりそう。
ロードした瞬間ゲームオーバーになるところでオートセーブさせればいいのでは?
セーブデータ壊すとかそういうの無理ではないかと。
セーブしないでそのセーブデータに影響させる変数とか宣言できるのかは知らないけど
出来たとしたら他のセーブデータすべてに影響する内容になりそう。
2017/05/25(木) 19:44:57.63ID:QbI6ALL8
結論から言うと無理
自分自身を書き換える事が出来ないから
似たような事は
・スクリプトから個別セーブデータを壊す(オープンして空にして保存)
・グローバルセーブデータを作る(もしくは壊す)
・グローバルセーブの状態によってその特別なイベントを出さない
で出来るけど結局以前のデータを残されてたり、ダウンロードしなおされると元に戻る
自分自身を書き換える事が出来ないから
似たような事は
・スクリプトから個別セーブデータを壊す(オープンして空にして保存)
・グローバルセーブデータを作る(もしくは壊す)
・グローバルセーブの状態によってその特別なイベントを出さない
で出来るけど結局以前のデータを残されてたり、ダウンロードしなおされると元に戻る
2017/05/25(木) 19:56:45.42ID:QbI6ALL8
グローバルセーブをゲームフォルダ以外にこっそり作れば回避は難しくなるけど
セキュリティソフトによっては警告が出る
というかそんなギミックは苦情が来るからやめたほうが良い
セキュリティソフトによっては警告が出る
というかそんなギミックは苦情が来るからやめたほうが良い
2017/05/25(木) 23:11:32.08ID:4YAa5BFF
2000%クソゲーだなそれw
2017/05/26(金) 10:33:06.08ID:Oawt0knu
2017/05/26(金) 11:57:40.67ID:boPc8UMh
回復魔法の属性補正って通常属性攻撃と同じ?
たとえば燃えてる系の敵に水属性有効率が200%に設定してあると仮定した時、炎に水の回復技使うと回復効果も2倍になるのかな
たとえば燃えてる系の敵に水属性有効率が200%に設定してあると仮定した時、炎に水の回復技使うと回復効果も2倍になるのかな
2017/05/26(金) 11:59:26.14ID:47g7NQaw
やればわかるだろ
2017/05/26(金) 11:59:49.77ID:6yqouz5O
実際やれば秒で答えわかるだろw
2017/05/27(土) 04:52:06.48ID:tv3BPlWx
条件分岐のスクリプトでアクター(変数)がステートxになっているかどうかっていう表記はどうかけばいいですかね?
2017/05/27(土) 04:59:25.63ID:tv3BPlWx
自己解決
$game_party.members[$game_variables[1]].state?(1)
これだけでよかったのね
$game_party.members[$game_variables[1]].state?(1)
これだけでよかったのね
2017/05/27(土) 10:43:37.24ID:hfGTxi01
解法を書くのは良い自己解決
2017/05/28(日) 11:33:19.74ID:2WGZrGVc
自分もしくは敵の攻撃・防御・アイテムを封じるステート作りたいな
2017/05/28(日) 12:31:47.49ID:w26vvvHi
作ったらいいじゃない
2017/05/29(月) 00:09:06.70ID:lB7RF2Ir
独自のシステム作ろうとして
値保存用にスクリプトでグローバル変数使ってるんですが
ゲームを終了して、再度立ち上げ直すとグローバル変数が初期化されてしまっています。
スイッチや変数はちゃんと保持されるのにこちらが保持されないのは
何かやり方が悪いんでしょうか。。。
値保存用にスクリプトでグローバル変数使ってるんですが
ゲームを終了して、再度立ち上げ直すとグローバル変数が初期化されてしまっています。
スイッチや変数はちゃんと保持されるのにこちらが保持されないのは
何かやり方が悪いんでしょうか。。。
2017/05/29(月) 01:01:44.50ID:mMrSbmsw
ゲーム終了時にグローバル変数は保存してるの?
起動時に読み込んでる?
起動時に読み込んでる?
2017/05/29(月) 01:48:11.01ID:JsFbpgKc
セーブデータをいじらないといけない
module DataManager
class << self
#--------------------------------------------------------------------------
# ● セーブ内容の作成
#--------------------------------------------------------------------------
alias _make_save_contents make_save_contents
def make_save_contents
contents = _make_save_contents
contents[:hoge] = $hoge
contents[:fuga] = $fuga
contents[:piyo] = $piyo
contents
end
#--------------------------------------------------------------------------
# ● セーブ内容の展開
#--------------------------------------------------------------------------
alias _extract_save_contents extract_save_contents
def extract_save_contents(contents)
_extract_save_contents(contents)
$hoge = contents[:hoge]
$fuga = contents[:fuga]
$piyo = contents[:piyo]
end
end
end
module DataManager
class << self
#--------------------------------------------------------------------------
# ● セーブ内容の作成
#--------------------------------------------------------------------------
alias _make_save_contents make_save_contents
def make_save_contents
contents = _make_save_contents
contents[:hoge] = $hoge
contents[:fuga] = $fuga
contents[:piyo] = $piyo
contents
end
#--------------------------------------------------------------------------
# ● セーブ内容の展開
#--------------------------------------------------------------------------
alias _extract_save_contents extract_save_contents
def extract_save_contents(contents)
_extract_save_contents(contents)
$hoge = contents[:hoge]
$fuga = contents[:fuga]
$piyo = contents[:piyo]
end
end
end
2017/05/29(月) 09:42:56.13ID:8iKloLa3
2017/05/31(水) 22:41:49.37ID:285i+pat
サイドビューで自軍のキャラの初期位置を移動させようとしてるんですけど
http://blog.livedoor.jp/trb_surasura/archives/10203367.html
これを使おうとしてるんですが、プラグインでも戦闘中のスクリプトでもエラーが起きます
恐らくMVのものだったからでしょうか、何か代替できるものがあれば教えていただきたく存じます
http://blog.livedoor.jp/trb_surasura/archives/10203367.html
これを使おうとしてるんですが、プラグインでも戦闘中のスクリプトでもエラーが起きます
恐らくMVのものだったからでしょうか、何か代替できるものがあれば教えていただきたく存じます
2017/05/31(水) 22:45:05.11ID:285i+pat
サイドビューのプラグインはRPG探検隊様のものを流用させていただいています
2017/05/31(水) 22:45:39.60ID:Ell/ClKB
2017/05/31(水) 22:50:51.79ID:285i+pat
2017/05/31(水) 22:53:57.97ID:K79SwrDd
「vxace サイドビュー スクリプト」で検索すれば複数出てくるけどそれらには問題があるの?
2017/05/31(水) 22:54:57.08ID:285i+pat
2017/05/31(水) 23:01:33.01ID:K79SwrDd
RPG探検隊の奴だと「SideViewアクション設定」のACTOR_POSITION弄れば良いんじゃないかな?
そういうことではない?
そういうことではない?
2017/05/31(水) 23:03:06.58ID:285i+pat
2017/06/01(木) 05:43:29.91ID:Wo336TrK
敵が技出すときに動く(画像を入れ替える)ようにしたかったんだけど、攻撃時に敵のバトラー画像を変更する方法はありませんか?
2017/06/01(木) 06:36:56.64ID:EC8f0/T3
データベース>アニメーション>SEとフラッシュのタイミングで対象消去してエフェクトを敵グラフィックにするとか?
2017/06/01(木) 06:53:01.02ID:EC8f0/T3
データベース>敵グループ>バトルイベント>イベントコマンド3>敵キャラの変身を毎回やったほうがいいかな?
2017/06/01(木) 08:17:10.90ID:MICi5CYS
データベース的にはアニメーションのほうがいいかもね
2017/06/01(木) 13:29:25.39ID:c0g1s22o
すいません、ネット回線が落ち込んでてなかなかお礼が言えませんでしたが、今更ながら感謝させていただきます。対処できました、ありがとうございます!
2017/06/01(木) 15:56:17.27ID:1dSA2FRk
戦闘中、味方パーティーが逃げだしたときに「途中から出現」する設定をしてまだ現れてない敵が
最後に強制的に現れて見えてしまうんですが何か対処法ってありますか?
最後に強制的に現れて見えてしまうんですが何か対処法ってありますか?
2017/06/01(木) 16:11:16.92ID:c0g1s22o
>778
画像が大き過ぎたのでアニメーションで無理だったので変身にしようと思ったんですが、変身(バトルイベント)って技をフラグにできるんですかね…?
画像が大き過ぎたのでアニメーションで無理だったので変身にしようと思ったんですが、変身(バトルイベント)って技をフラグにできるんですかね…?
2017/06/01(木) 16:14:27.89ID:MICi5CYS
>>781
VXAce_FP でぐぐれ
VXAce_FP でぐぐれ
2017/06/01(木) 17:01:37.47ID:EC8f0/T3
>>782
データベース>スキルで敵専用のスキルを作成
データベース>スキル>使用効果>その他>コモンイベントでスイッチ操作
データベース>敵グループ>バトルイベントで条件をスイッチに、スパンをモーメントとかならどうだろう?
実際試してないのでうまくいくか……
データベース>スキルで敵専用のスキルを作成
データベース>スキル>使用効果>その他>コモンイベントでスイッチ操作
データベース>敵グループ>バトルイベントで条件をスイッチに、スパンをモーメントとかならどうだろう?
実際試してないのでうまくいくか……
2017/06/01(木) 17:40:06.21ID:1dSA2FRk
>>783
ありがとう。助かりました。
ありがとう。助かりました。
2017/06/01(木) 17:53:49.70ID:c0g1s22o
2017/06/01(木) 18:09:58.50ID:c0g1s22o
擬似アニメーションについて色々わかってきたので纏めておきます
・アニメーションさせる敵キャラは基本的にスキルは覚えさせないのが吉、アニメーションやスキルが暴発する可能性がある
・アニメーションをさせてから戻す場合は最初の立ち絵を最後に入れる必要がある
当たり前のことかもしれませんが、参考にして頂ければ…
・アニメーションさせる敵キャラは基本的にスキルは覚えさせないのが吉、アニメーションやスキルが暴発する可能性がある
・アニメーションをさせてから戻す場合は最初の立ち絵を最後に入れる必要がある
当たり前のことかもしれませんが、参考にして頂ければ…
2017/06/01(木) 18:26:31.42ID:c0g1s22o
アニメーションは上手くいくんですが、よく見て見たら全体の動きが
アニメーションもどき
↓
実際の戦闘(移動、ダメージ、攻撃演出など)
↓
アニメーション
とおかしなことになってますね…
入力しているのは
スキル:スイッチON
→バトルイベント:アニメーション、スイッチOFFにしてるんですが、なんでこうなるんだろう…
アニメーションもどき
↓
実際の戦闘(移動、ダメージ、攻撃演出など)
↓
アニメーション
とおかしなことになってますね…
入力しているのは
スキル:スイッチON
→バトルイベント:アニメーション、スイッチOFFにしてるんですが、なんでこうなるんだろう…
2017/06/01(木) 18:33:05.23ID:ZCpeDwPD
2017/06/01(木) 18:36:56.04ID:c0g1s22o
>>789
それも考えたんですけど、アニメーション枚数もそれなりに量あるのでグラフィックの枠内に収まらないんですよね…治ればよかったんですけど(そもそも分割しても入りきってないんですけれども)
それも考えたんですけど、アニメーション枚数もそれなりに量あるのでグラフィックの枠内に収まらないんですよね…治ればよかったんですけど(そもそも分割しても入りきってないんですけれども)
2017/06/01(木) 18:42:50.17ID:c0g1s22o
アニメーションの方でも何か大きな画像を扱えるしようみたいなのがあればいいんですけどね…
自分としては移動→攻撃アニメーション→ダメージの流れが理想なんですが、攻撃のタイミングを弄る場所が見当たらないですし
自分としては移動→攻撃アニメーション→ダメージの流れが理想なんですが、攻撃のタイミングを弄る場所が見当たらないですし
2017/06/01(木) 18:45:36.42ID:EC8f0/T3
細かな演出タイミングは設定ではどうにもならないと思うので妥協できない場合は
スクリプトのScene_Battleを弄るしかなさそう
スクリプトのScene_Battleを弄るしかなさそう
2017/06/01(木) 18:52:03.52ID:o1RH6Dg7
AceでRPG探検隊様のサイドビュースクリプトを使わせてもらってるのですが
アクターに魔法詠唱を指示した直後に、再びそのアクターにターンが回ってきてしまい
何事も無かったかのように命令コマンドを指示し直すことになる、という現象が時々起きます。
ただ他にも戦闘関連のスクリプトを入れている為、デフォルトのエラーではないのかもしれません。
仮にサイドビュースクリプトに限った場合、どこら辺を見直してみるべきか、ご教示頂けますと有難いです。
アクターに魔法詠唱を指示した直後に、再びそのアクターにターンが回ってきてしまい
何事も無かったかのように命令コマンドを指示し直すことになる、という現象が時々起きます。
ただ他にも戦闘関連のスクリプトを入れている為、デフォルトのエラーではないのかもしれません。
仮にサイドビュースクリプトに限った場合、どこら辺を見直してみるべきか、ご教示頂けますと有難いです。
2017/06/01(木) 19:00:28.58ID:1dSA2FRk
教会でセーブするようにして、セーブするときにいずれかのセーブ欄にちゃんと記録したときと
キャンセルしたときで神父のメッセージが変わるようにするのって
難しいんでしょうか?
例えば
@セーブ欄1に記録したとき
神父「無事書きとめました。
他に何か用はありますか?
Aセーブせずにキャンセルしたとき
神父「書きとめなくてよろしいのですか?
それでは 他に用はありますか?
という感じになるようにしたいのですが。
キャンセルしたときで神父のメッセージが変わるようにするのって
難しいんでしょうか?
例えば
@セーブ欄1に記録したとき
神父「無事書きとめました。
他に何か用はありますか?
Aセーブせずにキャンセルしたとき
神父「書きとめなくてよろしいのですか?
それでは 他に用はありますか?
という感じになるようにしたいのですが。
2017/06/01(木) 19:00:33.30ID:EC8f0/T3
>>793
まず問題の切り分けを自分でやってもらえるかな?
サイドビュー戦闘以外の戦闘関連スクリプトを全部外して起こるかどうか
無数にあるスクリプト素材が相互にどう影響するかは誰にも分からないし入れる順番で起こる現象も違うから
まず問題の切り分けを自分でやってもらえるかな?
サイドビュー戦闘以外の戦闘関連スクリプトを全部外して起こるかどうか
無数にあるスクリプト素材が相互にどう影響するかは誰にも分からないし入れる順番で起こる現象も違うから
2017/06/01(木) 19:12:09.57ID:ZCpeDwPD
>>794 こいつを応用してみて
class Scene_Save < Scene_File
alias _on_save_success on_save_success
def on_save_success
_on_save_success
$game_switches[123] = true #セーブしたらスイッチ123がONになる
end
end
class Scene_Save < Scene_File
alias _on_save_success on_save_success
def on_save_success
_on_save_success
$game_switches[123] = true #セーブしたらスイッチ123がONになる
end
end
2017/06/01(木) 19:16:18.33ID:ZCpeDwPD
すまんロード時のこと考えてなかったわ修正する
2017/06/01(木) 19:17:30.10ID:c0g1s22o
ところでなんですが、キャラチップの仕様として!$で大きなキャラチップも使えますがアニメーションにも同様な仕様はないですかね?
2017/06/01(木) 19:23:14.30ID:ZCpeDwPD
>>794
class Scene_File < Scene_MenuBase
alias _start start
def start
_start
$game_variables[123] = 0 #セーブしなければ変数123に0代入
end
end
class Scene_Save < Scene_File
alias _on_save_success on_save_success
def on_save_success
_on_save_success
$game_variables[123] = 1 #セーブしたら変数123に1代入
end
end
class Scene_Load < Scene_File
alias _on_load_success on_load_success
def on_load_success
_on_load_success
$game_variables[123] = 2 #ロードされたときは変数123に2代入
end
end
class Scene_File < Scene_MenuBase
alias _start start
def start
_start
$game_variables[123] = 0 #セーブしなければ変数123に0代入
end
end
class Scene_Save < Scene_File
alias _on_save_success on_save_success
def on_save_success
_on_save_success
$game_variables[123] = 1 #セーブしたら変数123に1代入
end
end
class Scene_Load < Scene_File
alias _on_load_success on_load_success
def on_load_success
_on_load_success
$game_variables[123] = 2 #ロードされたときは変数123に2代入
end
end
2017/06/01(木) 19:29:56.08ID:ZCpeDwPD
>>798
ないです
ないです
2017/06/01(木) 19:54:44.87ID:1dSA2FRk
>>799
ありがとう。やってみます。
ありがとう。やってみます。
2017/06/01(木) 20:07:55.58ID:ZCpeDwPD
ファイル名頭に$を入れたアニメーションはビッグサイズで表示するテスト
class Sprite_Base < Sprite
def big_size
384
end
def animation_set_sprites(frame)#override
cell_data = frame.cell_data
@ani_sprites.each_with_index do |sprite, i|
next unless sprite
pattern = cell_data[i, 0]
if !pattern || pattern < 0
sprite.visible = false
next
end
sprite.bitmap = pattern < 100 ? @ani_bitmap1 : @ani_bitmap2
sign = (pattern < 100 ? @animation.animation1_name : @animation.animation2_name)[/^\$./]
size = sign ? big_size : 192
sprite.visible = true
sprite.src_rect.set(pattern % 5 * size,
pattern % 100 / 5 * size, size, size)
if @ani_mirror
sprite.x = @ani_ox - cell_data[i, 1]
sprite.y = @ani_oy + cell_data[i, 2]
sprite.angle = (360 - cell_data[i, 4])
sprite.mirror = (cell_data[i, 5] == 0)
else
sprite.x = @ani_ox + cell_data[i, 1]
sprite.y = @ani_oy + cell_data[i, 2]
sprite.angle = cell_data[i, 4]
sprite.mirror = (cell_data[i, 5] == 1)
end
sprite.z = self.z + 300 + i
sprite.ox = size / 2
sprite.oy = size / 2
sprite.zoom_x = cell_data[i, 3] / 100.0
sprite.zoom_y = cell_data[i, 3] / 100.0
sprite.opacity = cell_data[i, 6] * self.opacity / 255.0
sprite.blend_type = cell_data[i, 7]
end
end
end
class Sprite_Base < Sprite
def big_size
384
end
def animation_set_sprites(frame)#override
cell_data = frame.cell_data
@ani_sprites.each_with_index do |sprite, i|
next unless sprite
pattern = cell_data[i, 0]
if !pattern || pattern < 0
sprite.visible = false
next
end
sprite.bitmap = pattern < 100 ? @ani_bitmap1 : @ani_bitmap2
sign = (pattern < 100 ? @animation.animation1_name : @animation.animation2_name)[/^\$./]
size = sign ? big_size : 192
sprite.visible = true
sprite.src_rect.set(pattern % 5 * size,
pattern % 100 / 5 * size, size, size)
if @ani_mirror
sprite.x = @ani_ox - cell_data[i, 1]
sprite.y = @ani_oy + cell_data[i, 2]
sprite.angle = (360 - cell_data[i, 4])
sprite.mirror = (cell_data[i, 5] == 0)
else
sprite.x = @ani_ox + cell_data[i, 1]
sprite.y = @ani_oy + cell_data[i, 2]
sprite.angle = cell_data[i, 4]
sprite.mirror = (cell_data[i, 5] == 1)
end
sprite.z = self.z + 300 + i
sprite.ox = size / 2
sprite.oy = size / 2
sprite.zoom_x = cell_data[i, 3] / 100.0
sprite.zoom_y = cell_data[i, 3] / 100.0
sprite.opacity = cell_data[i, 6] * self.opacity / 255.0
sprite.blend_type = cell_data[i, 7]
end
end
end
2017/06/01(木) 22:03:48.20ID:WEGSPPNA
マップを飛ばすと座標がずれる(X:左に8Y:上に36くらい)んですが、これってマップが大きすぎるのと関係あるのでしょうか?マップの大きさは51×310で、マップチップを組み込むものではなく背景をもとに作ったマップです
2017/06/01(木) 22:25:58.92ID:c0g1s22o
すいません、飛ばした先の座標がずれるというのは誤りでした、正確には、マップの背景と指定したマップチップの位置がずれる、でした
マップの位置情報が左上にずれる感じです
マップの位置情報が左上にずれる感じです
2017/06/01(木) 22:36:38.60ID:o1RH6Dg7
>>795
返信ありがとうございます。確かにそうですよね。もっと正確に把握してみます。
返信ありがとうございます。確かにそうですよね。もっと正確に把握してみます。
2017/06/01(木) 22:53:16.89ID:EC8f0/T3
2017/06/01(木) 23:02:50.36ID:c0g1s22o
>>806
詳しくないので単語はよくわからないんですが、ココ数時間調査して見て分かったことを書いておきます…
・導入したスクリプトは関係ない(新規プロジェクトにて同様の問題が発生したことを確認)
・マップを小さくしてみたり、飛ばし先の座標を変更してもバグる
実際に起動した時のバグり方としては、マップのシステム情報(動ける範囲や画像(マップ)の端の設定など)が左上に寄せられ、左上の限界位置はそのままといった感じです、感覚的には右と下の枠を同倍率で狭めている感じでしょうか
○マップの基本設定
スクロールタイプ:ループしない
大きさ:51×310
使用タイル:自前で用意した透明タイル二種(歩行可能、不可能)
詳しくないので単語はよくわからないんですが、ココ数時間調査して見て分かったことを書いておきます…
・導入したスクリプトは関係ない(新規プロジェクトにて同様の問題が発生したことを確認)
・マップを小さくしてみたり、飛ばし先の座標を変更してもバグる
実際に起動した時のバグり方としては、マップのシステム情報(動ける範囲や画像(マップ)の端の設定など)が左上に寄せられ、左上の限界位置はそのままといった感じです、感覚的には右と下の枠を同倍率で狭めている感じでしょうか
○マップの基本設定
スクロールタイプ:ループしない
大きさ:51×310
使用タイル:自前で用意した透明タイル二種(歩行可能、不可能)
2017/06/01(木) 23:05:48.39ID:c0g1s22o
すいません今マップを歩いていたら上部26マス分も歩けませんでした、もう自分には何が何だか…
2017/06/01(木) 23:25:14.88ID:EC8f0/T3
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【文春】永野芽郁(25)&田中圭(40)燃え上がる不倫LINE ★40 [Ailuropoda melanoleuca★]
- 【動物】オスザルの一部は同性へのマウンティング時に「挿入&射精」していたと判明 [おっさん友の会★]
- 【福岡】「うるさいから捕まえようと」パトカーから逃走中の2人乗りバイクに車で追突させた男(21)を逮捕 [おっさん友の会★]
- 渡邊渚「私だから死んでないだけ」「私がちょっとでも変な気を起こしたら誰のせいになるんだろう」今も闘い続けるPTSD、SNS中傷 ★2 [muffin★]
- パキスタン「インドへの軍事作戦を開始した」 ★2 [お断り★]
- 【神戸】自宅ベランダで全裸に 51歳男を逮捕 [シャチ★]
- 【画像】旦那デスノートでオススメされてる不凍液を夫の食事に混ぜて殺害しようとした奥様、逮捕される😭 [746833765]
- 外人「なぜ日本人は"神"の存在を信じない?」 [481226666]
- 謎の勢力「あ、気圧低いからめちゃくちゃ体調悪い…」 [931522839]
- 【悲報】参政党員「小麦はGHQが日本に無理やりねじ込んだ毒物。身体に悪いし食うな」
- TRIALのあらびきポークフランクうまいぞ
- レスバで勝利を掴む