I am having a problem with the CTB battle system. It is not updating the battle log with 'State persist' messages.
Example: I have a skill 'Holy Aura' which casts a 10 turn buff that heals 10% max hp per turn. It has an inflict message of " (target name) is regenerating health" and a state persist message of " heals 10% HP". After casting the spell in battle it will display the inflict message but will never display the state persist message. It will just show the number of the amount healed appear on the user.
If I disable the CTB Plugin, state persists messages appear in battle again.
In battle engine core I have turned on battle log text for Show State Text and Show HP text.
I have reinstalled all scripts and put them in the correct order, I only have yanfly scripts.
Is this a bug or is there something I can do to make the battle log display State persist messages while using Yanfly CTB battle system?
Also is there a way to show an animation everytime a state persists on the affected character?
[YEP] Yanfly Engine Plugins
● ARCHIVED · READ-ONLY
-
-
Tips & Tricks - Healing Link
The Healing Link effect allows the caster to be healed whenever the target receives healing from a skill. You can recreate this effect in RPG Maker MV!
Copy and Paste version of the code: http://yanfly.moe/2016/01/13/tips-tricks-healing-link/ -
This is because CTB (and ATB) are both tick-based systems and not-turn based systems. The tick-structure of the battle systems would cause these persistant messages, if enabled otherwise, to show every tick, which is 60 times a second in ATB. Not something favorable for the player so I've disabled it across both battle systems.I am having a problem with the CTB battle system. It is not updating the battle log with 'State persist' messages.
Example: I have a skill 'Holy Aura' which casts a 10 turn buff that heals 10% max hp per turn. It has an inflict message of " (target name) is regenerating health" and a state persist message of " heals 10% HP". After casting the spell in battle it will display the inflict message but will never display the state persist message. It will just show the number of the amount healed appear on the user.
If I disable the CTB Plugin, state persists messages appear in battle again.
In battle engine core I have turned on battle log text for Show State Text and Show HP text.
I have reinstalled all scripts and put them in the correct order, I only have yanfly scripts.
Is this a bug or is there something I can do to make the battle log display State persist messages while using Yanfly CTB battle system?
Also is there a way to show an animation everytime a state persists on the affected character? -
Here's a situation that I can only presume is unintentional. At the beginning of my game, I have ClassChangeCore Show Command set to false, so the player is locked into their class. However, when I go into the Skill Learn Menu, they can see and select the other classes that they will be able to switch into once I enable the menu command.
How can I limit the skill learn menu to only show classes the actor has equipped? -
With that update the issue with losing turns on action end and when hit is resolved.Thanks. I'll go take a look.
Edit: Haven't been able to test it yet, but I'm pretty sure this will fix it: http://yanfly.moe/plugins/en/YEP_BuffsStatesCore.js
Let me know if it doesn't.
Every turn takes a lot longer now. Perhaps its a consequence of the fix, that duration more accurately reflects the set timings.
However, it introduces a new issue. (or just half fixed the original one)
If you apply your update to the demo I posted, and apply the self state in battle, you'll notice that the actor takes damage 3 to 4 times (at the end of each action) before the state loses 1 turn.
It seems that while the states duration is fixed its effect frequency is not. -
Yes I did, that is the return after I input: ($gameTroop.members()[21]._screenY = 600;) on call script.Did you replace the "the monster's index" in $gameTroop.members()[the monster's index]._screenY = 600?
You'll need to replace it with 0, 1, 2, 3, etc.
Isn't it possible to tweak Healing link to turn it into the pokemon attack "Destiny bond" where if an affected character dies, the monster/character that gave the killing hit dies too. -
That's because you have all those classes unlocked for the actor by default. Remove those classes from the default pool. Then as you enable Class Change Core, unlock them for everybody.Here's a situation that I can only presume is unintentional. At the beginning of my game, I have ClassChangeCore Show Command set to false, so the player is locked into their class. However, when I go into the Skill Learn Menu, they can see and select the other classes that they will be able to switch into once I enable the menu command.
How can I limit the skill learn menu to only show classes the actor has equipped?
I'm not sure what you mean by effect frequency. Care to elaborate?With that update the issue with losing turns on action end and when hit is resolved.
Every turn takes a lot longer now. Perhaps its a consequence of the fix, that duration more accurately reflects the set timings.
However, it introduces a new issue. (or just half fixed the original one)
If you apply your update to the demo I posted, and apply the self state in battle, you'll notice that the actor takes damage 3 to 4 times (at the end of each action) before the state loses 1 turn.
It seems that while the states duration is fixed its effect frequency is not.
The number you put there isn't the ID of the enemy, it's the index of the enemy.Yes I did, that is the return after I input: ($gameTroop.members()[21]._screenY = 600;) on call script.
Isn't it possible to tweak Healing link to turn it into the pokemon attack "Destiny bond" where if an affected character dies, the monster/character that gave the killing hit dies too.
Slime A - 0
Slime B - 1
Slime C - 2
It only goes up to 7. -
Hello Yanfly, love the work you've done for Ace and MV, and excited to see what you have in store for the future. I do have one question though.
With Item Core, I'm not sure if this is a bug or I'm not understanding how it works properly but the Max Items/Weapons/Armors option doesn't seem to be functioning properly. As you can see in the screenshot below, I have 102/100 potions in the items tab.
Is this intended? My understanding was this limits the amount of a certain category of inventory you can have. Sorry if I'm not understanding it correctly. -
That's because you have all those classes unlocked for the actor by default. Remove those classes from the default pool. Then as you enable Class Change Core, unlock them for everybody.
I'm not sure what you mean by effect frequency. Care to elaborate?
The number you put there isn't the ID of the enemy, it's the index of the enemy.
Slime A - 0
Slime B - 1
Slime C - 2
It only goes up to 7.
OHHHHHHHH I See... But it still didn't work... Well, I'll find a way through backgrounds... tnks -
Hello Yanfly, love the work you've done for Ace and MV, and excited to see what you have in store for the future. I do have one question though.
With Item Core, I'm not sure if this is a bug or I'm not understanding how it works properly but the Max Items/Weapons/Armors option doesn't seem to be functioning properly. As you can see in the screenshot below, I have 102/100 potions in the items tab.
SpoilerHello, I am aware that Independent Items have a "maximum" amount. This "maximum" amount only serves to limit the player from buying too many items and filling up the inventory with junk. Gaining items through any other method, such as events and battle drops are still allowed.SpoilerIs this intended? My understanding was this limits the amount of a certain category of inventory you can have. Sorry if I'm not understanding it correctly.
Now, why is this? Because not every scenario can be envisioned by the developer. In most cases, the developer can be short sighted and may not be aware of the player's inventory limits at the time. So, to mitigate this, I made it possible for the player to go above the limit but only through events and battle drops.
Why those two? Because of key items. Key items, if given by events and/or battle drops, are a necessity to progress in a game. Should the developer be unaware of the player's inventory and provide a key item that cannot be inserted into the inventory, the player will be locked out of the game through no fault of their own. So to prioritize the player, this system is enabled. -
The frequency of the effect as applied.I'm not sure what you mean by effect frequency. Care to elaborate?
It should apply once every state turn. But instead its being applied every actor action. Regardless of the states current turn.
The effect frequency is still broken. The turn frequency, and the loss of turns on hit, is fixed.
Note: I assumed this would be obvious from the demo, with your fix applied. -
What is the effect? A regeneration effect? Nearly everything in RPG Maker is called an effect. Please be detailed here.The frequency of the effect as applied.
It should apply once every state turn. But instead its being applied every actor action. Regardless of the states current turn.
The effect frequency is still broken. The turn frequency, and the loss of turns on hit, is fixed.
Note: I assumed this would be obvious from the demo, with your fix applied. -
I apologize. I understand your attention is split between many issues which is why I provided the demo. In order to help avoid this sort of confusion.What is the effect? A regeneration effect? Nearly everything in RPG Maker is called an effect. Please be detailed here.
The effect is a negative regen effect. Which should be happening per state removal timing. In this case, timing is per turn. But the effect is being applied per action. -
That's right. The regeneration aspect was changed a while back to make it occur per action even if the states are time based. This is because users are unable to comprehend the whole tick-based turn format, where it occurs per action. The change was made about two weeks ago: http://yanfly.moe/2016/01/01/happy-new-year-plugin-updates-71/I apologize. I understand your attention is split between many issues which is why I provided the demo. In order to help avoid this sort of confusion.
The effect is a negative regen effect. Which should be happening per state removal timing. In this case, timing is per turn. But the effect is being applied per action.
There’s a mechanic change made to the way state turns are handled for the Battle Engine Core. It’s come to my attention that tick-based battle systems like ATB and CTB are extremely difficult to comprehend the nature of. That said, I’ve made adjustments to these battle systems because the individual battle turn structure is something of a concept that is difficult to grasp for both players and developers alike and decided that keeping the complexity of the tick-based battle system is of no advantage to anyone who uses it and/or plays it.
So with that said, I’ve made it where if you are using a tick-based battle system (ATB or CTB) and have timed states set to false, turns will now update relative to the battler’s turn rather than when the battle’s turn makes a change. States that end at turn end will have their timing changed to whenever HP, MP, and TP regeneration occurs. The difference in the timing window is small so it’s hardly noticeable. The buffs update timing is also moved to the regeneration timing as well. Timed states will also regenerate based off actor turns. This way, nobody has to deal with when a turn ends or starts anymore unless you’re dealing with timed events. If you are, you’re just going to have to tweak the battle system to have the timed events occur at the rate you want them to. This is one of the things about a tick-based battle system that you’ll just have to deal with.
I’ve also made the decision that I won’t be making any more tick-based battle systems in the future. Quite frankly, the amount of difficulty people have in balancing AGI, speed, and the massive amount of incoming questions about the very concept of turns in tick-based battle systems is a sign that those aren’t the types of battle systems people need to be working with. I personally think it’s better for users to work with something they deem to be more familiar and understandable. After all, it wouldn’t look too good for players to find out that the developer doesn’t fully understand the concept of a tick-based battle system but is still using one anyway. Therefore, the battle systems I’ll be making in the future will be more friendly towards the devs in by being strictly turn-based only. -
Thanks for the reply. I apologize for misstating - my problem isn't that the classes are considered to be unlocked. I was puzzled by the functionality of displaying classes in the Learn Skill list when that character is not currently that class and has no JP in that class. It seems like the list could get very cluttered quite quickly with classes the person has no intention of using and has to scroll through anyway.That's because you have all those classes unlocked for the actor by default. Remove those classes from the default pool. Then as you enable Class Change Core, unlock them for everybody.
But if that's intended on your part, it should be straightforward enough for me to rewrite it in the plugin myself. -
I remember that update. Which is why I started my bug report asking for clarification about what should happen vs. what I saw happening. :unsure:That's right. The regeneration aspect was changed a while back to make it occur per action even if the states are time based. This is because users are unable to comprehend the whole tick-based turn format, where it occurs per action. The change was made about two weeks ago: http://yanfly.moe/2016/01/01/happy-new-year-plugin-updates-71/
Do you think its possible that a large part of the problem was that state turns have only just now accurately reflected their real turns? This bug, may have been the reason so many where so confused. One big misunderstanding leading to a over reaction. I speak from experience, that it is really hard to accept an explanation for how something should be working, when what you see doesn't reflect those workings. Even if that realization is mostly subliminal. :|
As it functions now, after your change, using state timing based on real turns totally breaks regeneration mechanics for states. Especially if the build allows for hastened actors to act several times faster than others... An actor could potentially heal 300% more or take 300% more damage from the same state, simply because they where acting four times faster. :o
You may suggest that people not use timed turns if there is a problem. Or that you simply remove the timed turns option completely from ATB. But then, the remaining action based turns breaks any state with a duration even if its not applying regen effects. Faster actors will waste resources having states applied to them, because the state would be over in a fraction of the time. Multiplying applications over a long battle. This will inevitably break any mechanic that relies on timed states near the end of a game when stats are most inflated. :(
Sure, one could simply increase the number of turns for the stats in question. But then, what about the slower enemies, or those that have been debuffed?? They will get SUBSTANTIALLY longer lasting effects as a result. Defeating the whole purpose of slowing them down, and breaking any class/enemy balancing that relies even a little bit on state effects.
Put simply... Without functioning timed states, the ATB mechanic becomes almost impossible to use. :headshake:
So, please... PLEASE. Reconsider the changes you've made. ;_; -
I do understand your concern for the matter and your explanation is very valid. Especially in the scope of how tick-based battle systems are supposed to work, I see that you're of the few users who understand the purpose of a tick-based battle system and the underlying mechanics behind them.I remember that update. Which is why I started my bug report asking for clarification about what should happen vs. what I saw happening. :unsure:
Do you think its possible that a large part of the problem was that state turns have only just now accurately reflected their real turns? This bug, may have been the reason so many where so confused. One big misunderstanding leading to a over reaction. I speak from experience, that it is really hard to accept an explanation for how something should be working, when what you see doesn't reflect those workings. Even if that realization is mostly subliminal. :|
As it functions now, after your change, using state timing based on real turns totally breaks regeneration mechanics for states. Especially if the build allows for hastened actors to act several times faster than others... An actor could potentially heal 300% more or take 300% more damage from the same state, simply because they where acting four times faster. :o
You may suggest that people not use timed turns if there is a problem. Or that you simply remove the timed turns option completely from ATB. But then, the remaining action based turns breaks any state with a duration even if its not applying regen effects. Faster actors will waste resources having states applied to them, because the state would be over in a fraction of the time. Multiplying applications over a long battle. This will inevitably break any mechanic that relies on timed states near the end of a game when stats are most inflated. :(
Sure, one could simply increase the number of turns for the stats in question. But then, what about the slower enemies, or those that have been debuffed?? They will get SUBSTANTIALLY longer lasting effects as a result. Defeating the whole purpose of slowing them down, and breaking any class/enemy balancing that relies even a little bit on state effects.
Put simply... Without functioning timed states, the ATB mechanic becomes almost impossible to use. :headshake:
So, please... PLEASE. Reconsider the changes you've made. ;_;
For the current ATB and CTB plugins, I will leave the timed states functioning as they currently are. However, I will create an extension plugin in the (hopefully) near future that will overwrite the nerfed tick-based aspect currently applied to an even more accurate portrayal of the tick-based regeneration process where the regeneration process strictly on the turn counter of individualized states and adding adaptable Lunatic Mode effects with it.
For now, just put up with my nerf until I get it out. :) -
-
This is really good news! Tick-based regeneration is something I've wanted for my project for a while.For the current ATB and CTB plugins, I will leave the timed states functioning as they currently are. However, I will create an extension plugin in the (hopefully) near future that will overwrite the nerfed tick-based aspect currently applied to an even more accurate portrayal of the tick-based regeneration process where the regeneration process strictly on the turn counter of individualized states and adding adaptable Lunatic Mode effects with it.
-
@Roguedeus: That's problematic for ATB for sure. The change to how states and buffs are updated has actually fixed CTB for the most part but ATB needs to function in real-time like its Final Fantasy counterparts. In other words, states and buffs need to decay based on seconds or frames if you want them to function correctly. Same with the cooldowns and warmups.
So Regen for example would last for 15s no matter how many turns you get in over those 15s and that will allow you to balance it correctly and avoid any headaches due to getting multiple turns.