[RMVX ACE] SLOWING DOWN BATTLES!
Posts
Pages:
1
Here's the short version: I want to slow down battles in my game.
Longer version: I don't want to make it feel like everyone is slogging through peanut butter - maybe just some pauses would be nice. I feel like the speed of combat in VX Ace goes way too fast, almost like the player is expected to be bored so they need to be quickly ushered through combat before they move on to another game. I like for things to have a slower, more "tactical" feel, so the player has more opportunities to pick up on the little nuances of combat. Especially early on when they don't know much about the different patterns and strengths of various enemies.
So, this is scripting stuff... way out of my league. I've got several of Yanfly's amazing scripts, including two of his combat scripts, but I looked through them and I didn't see anything that was about "speed" or pacing in general. Otherwise I would have just tweaked a few numbers to see what would happen.
Anybody out there deal with this issue? Better yet, anybody know of a script that handles the speed of combat?
Longer version: I don't want to make it feel like everyone is slogging through peanut butter - maybe just some pauses would be nice. I feel like the speed of combat in VX Ace goes way too fast, almost like the player is expected to be bored so they need to be quickly ushered through combat before they move on to another game. I like for things to have a slower, more "tactical" feel, so the player has more opportunities to pick up on the little nuances of combat. Especially early on when they don't know much about the different patterns and strengths of various enemies.
So, this is scripting stuff... way out of my league. I've got several of Yanfly's amazing scripts, including two of his combat scripts, but I looked through them and I didn't see anything that was about "speed" or pacing in general. Otherwise I would have just tweaked a few numbers to see what would happen.
Anybody out there deal with this issue? Better yet, anybody know of a script that handles the speed of combat?
If you want to make combat more tactical, or strategy-based, I don't think it's about the speed at which combat actions are performed. It's more about what actions can be performed, and figuring out which one is the best one to take, given the current situation.
Games that you might want to look up:
Games that you might want to look up:
I'll check out all those games! And I may have chosen bad words. What I really want to do is avoid the feeling of zipping through each round. Pop! Pop! Pop! Spell! Death! Zip! Another spell! Round ends, player is frazzled. I feel like it goes against the tone of my narrative... it's too arcadey!
For the love of god, don't. 2-4 turns is fine for a general random encounter (maybe a few more for harder ones). Anything more than that is boring and bland unless you have an amazing battle system.
The best idea is to scale it depending on how many encounters you have. If you have the default random encounter system then fast is good. Fast is very good. Because the default is faulty and needs fixing in order to eliminate the chances of a 1-step encounter.
If you have a handful of carefully placed enemies then you can go longer battles, but the more battles you face, the faster battles should be. There is nothing more annoying and obnoxious than to have to go through a map and deal with a ton of enemies who take forever to kill just because the dev decided that battles should be longer for whatever stupid reason they came up with. If it's fodder, let it be killed fast. Or make it so that it's not fodder and is balanced enough to give more EXP and gold per battle that takes longer.
hm... something like: the more design control you spend on your battles as a developer, the longer you can make them. If you are careful to have a handful of enemies with more rewards, then longer battles is fine, but if you have a lot of enemies with less rewards, they should take 3 or less turns to destroy (except rare occurences of more dangerous ones with more rewards).
The best idea is to scale it depending on how many encounters you have. If you have the default random encounter system then fast is good. Fast is very good. Because the default is faulty and needs fixing in order to eliminate the chances of a 1-step encounter.
If you have a handful of carefully placed enemies then you can go longer battles, but the more battles you face, the faster battles should be. There is nothing more annoying and obnoxious than to have to go through a map and deal with a ton of enemies who take forever to kill just because the dev decided that battles should be longer for whatever stupid reason they came up with. If it's fodder, let it be killed fast. Or make it so that it's not fodder and is balanced enough to give more EXP and gold per battle that takes longer.
hm... something like: the more design control you spend on your battles as a developer, the longer you can make them. If you are careful to have a handful of enemies with more rewards, then longer battles is fine, but if you have a lot of enemies with less rewards, they should take 3 or less turns to destroy (except rare occurences of more dangerous ones with more rewards).
I don't do random encounters. Nobody hates taking a step, fighting a boring battle, then taking another step and fighting yet another boring battle more than I do. I grew up on Dragon Warrior and early Final Fantasy, so I got all that nonsense out of my system. All of my battles are carefully placed events that move around, and can be avoided if the player wants.
He's talking about the speed at which the moves play out, not extending the actual battle length in terms of rounds of combat. It's all happening too fast.
I don't know how to slow the fast pace. But what you want to do is insert a pause in between turn phases.
I don't know how to slow the fast pace. But what you want to do is insert a pause in between turn phases.
I added more. I tend to edit my posts a lot, sorry. ^.^
Basically, the more battles you have, the less time they should take to beat. The less battles, the more time and more rewards for beating them. That makes a good balance.
Basically, the more battles you have, the less time they should take to beat. The less battles, the more time and more rewards for beating them. That makes a good balance.
Yes, thank you Zachary_Braun!
And I agree, Liberty. I had that idea when I realized, in most JRPGs, that only the boss fights were any fun or had any risk.
And I agree, Liberty. I had that idea when I realized, in most JRPGs, that only the boss fights were any fun or had any risk.
The act of making battles slower/faster is actually very easy to achieve, as it is a simple matter of changing HP and damage potential. If you feel like giving options, you could give a mode that lowers the HP of all enemies and actors and one that raises them all.
Noooo LightningLord2, please look at what Zachary_Braun said - he said it better than me, and in fewer words. I want to change the pace of battles. A short pause in between every move. Whether the combat lasts for thirty seconds or five hours isn't the issue!
I haven't researched this fully, but, there some functions in Scene_Battle that might interest you.
The fact that all of these call "update_for_wait" is of interest. I'm also noticing...
...this function, found in the same class.
So, the thing I might do is to notice what the order these functions might be called in with a test-battle. I might even go so far as to create some kind of temporary "msgbox" command within each function to see which one gets executed last. Then, insert a "wait(5)" function (or what-have-you) at the end of the function, and see how that goes.
That's just me, though. There might be a more efficient way of doing it.
*Edit: Or, I guess you can try inserting "wait(5)" at the end of each of these, and see how that works for you?
#-------------------------------------------------------------------------- # * Wait Until Message Display has Finished #-------------------------------------------------------------------------- def wait_for_message @message_window.update update_for_wait while $game_message.visible end #-------------------------------------------------------------------------- # * Wait Until Animation Display has Finished #-------------------------------------------------------------------------- def wait_for_animation update_for_wait update_for_wait while @spriteset.animation? end #-------------------------------------------------------------------------- # * Wait Until Effect Execution Ends #-------------------------------------------------------------------------- def wait_for_effect update_for_wait update_for_wait while @spriteset.effect? end
The fact that all of these call "update_for_wait" is of interest. I'm also noticing...
#-------------------------------------------------------------------------- # * Wait #-------------------------------------------------------------------------- def wait(duration) duration.times {|i| update_for_wait if i < duration / 2 || !show_fast? } end
...this function, found in the same class.
So, the thing I might do is to notice what the order these functions might be called in with a test-battle. I might even go so far as to create some kind of temporary "msgbox" command within each function to see which one gets executed last. Then, insert a "wait(5)" function (or what-have-you) at the end of the function, and see how that goes.
That's just me, though. There might be a more efficient way of doing it.
*Edit: Or, I guess you can try inserting "wait(5)" at the end of each of these, and see how that works for you?
Hot damn Marrend, that's a cool find! Now, this might sound really stupid, but I think in the back of my mind I was assuming that it's not possible to edit the scripts that come with VX Ace, and the only way to do it was to write or download an entirely new script. If I'm wrong - and it's looking like I was - then I can't wait to get home and play around with this!
It's certainly possible to edit what already exists, but, it's probably smarter to copy-paste what you're editing into a "new" script between the "Materials" and "Main Process" sections of the script editor.
Darigaaz, Myraid Cypher!
Darigaaz, Myraid Cypher!
Pages:
1
















