Chaos Krux 29 Posted March 9, 2019 Hello, I was wondering if anyone might have a solution to a minor problem I'm having with my Zombification State. As it is right now, it works nicely in that it causes any and all healing, whether it be from items or magic, to be taken as damage. The problem I have with this is that it only registers healing that links to the REC Parameter (Recovery) and therefore does not reverse the effect of HP Regen or Revival Skills/Items. I'm not too bothered about Revival Skills/Items since I can just use healing skills to deal damage, but I would like Zombification to reverse the effect of Regen so that it acts more like poison if the target is a Zombie. This would also involve making Regen work normally again if Zombification was removed. I've played around a little with the script snippet that I'm using for Zombification at the moment, but I can't really figure anything out. I'll leave the snippet below if it helps, but don't credit me for creating it, because I didn't. I'd prefer not to have to get an entirely new script to make this work, and would much more prefer to just add another snippet to work for Regeneration, but I don't know if that's possible. Any help you could give would be greatly appreciated! Zombie.txt Share this post Link to post Share on other sites
roninator2 257 Posted March 10, 2019 Health Regen is defined in Game_BattlerBase it is hrg. Looking at this, I would try adding in one line. def hrg; check_for_zombie ? xparam(7) * -1 : xparam(7); end right after def rec and before def check_for_zombie 1 Share this post Link to post Share on other sites
Chaos Krux 29 Posted March 10, 2019 (edited) That's about as perfect as it possibly could have been, so thank you! I figured I wouldn't be able to have Revival Skills/Items cause instant death to Zombies anyway, since Revival isn't linked to any of the Parameters. Literally the only issue with this snippet is that it also causes other states that use the HRG Parameter, such as Poison, to have an opposite effect. Edited March 11, 2019 by Chaos Krux Share this post Link to post Share on other sites
PhoenixSoul 1,404 Posted May 19, 2019 I would think to have some effect that if a revival type skill/item were used, to check if it is used on a zombie and have it do 100% damage instead. That's my thoughts on this... 1 Share this post Link to post Share on other sites
Chaos Krux 29 Posted May 19, 2019 3 hours ago, PhoenixSoul said: I would think to have some effect that if a revival type skill/item were used, to check if it is used on a zombie and have it do 100% damage instead. That's my thoughts on this... I suppose so, though that would mean that every item or skill that revives would have to be reworked with common events, right? I might try that when I have a few minutes spare... Sounds easy enough, if a little less fluent than using the default HP recovery... 1 Share this post Link to post Share on other sites
PhoenixSoul 1,404 Posted May 20, 2019 I was thinking of having it check via the damage formula, but common events might work too... 1 Share this post Link to post Share on other sites
Chaos Krux 29 Posted May 21, 2019 On 5/20/2019 at 5:53 AM, PhoenixSoul said: I was thinking of having it check via the damage formula, but common events might work too... I haven't got a clue how scripting and damage checks work, and I'm way more familiar with Common Events anyway... I mean, I was kinda forced to be decent with common events because I needed a summoning system for my project, and none of the summoning scripts seemed to work... If I can make summoning work, this shouldn't be too bad... Thanks, though. 1 Share this post Link to post Share on other sites
roninator2 257 Posted May 22, 2019 On 3/10/2019 at 10:53 AM, Chaos Krux said: causes other states that use the HRG Parameter, such as Poison, to have an opposite effect. I figured it out. def hrg; check_for_zombie ? (check_for_poison ? xparam(7) : xparam(7) * -1) : xparam(7); end def check_for_poison; @states.include?(2); end 1 1 Share this post Link to post Share on other sites
PhoenixSoul 1,404 Posted May 22, 2019 @Chaos Krux I would think something like this in the damage formula: Spoiler b.state(id)? ? b.mhp : #healing formula here It seems that ronin got it though. 1 Share this post Link to post Share on other sites
Chaos Krux 29 Posted May 22, 2019 (edited) 13 hours ago, roninator2 said: I figured it out. def hrg; check_for_zombie ? (check_for_poison ? xparam(7) : xparam(7) * -1) : xparam(7); end def check_for_poison; @states.include?(2); end Sorry for being a bit dumb, but this didn't work... I probably just put the lines in the wrong place in the script, but the way I did it, nothing changed... Poison was still healing under Zombie... Edited May 22, 2019 by Chaos Krux Share this post Link to post Share on other sites
roninator2 257 Posted May 22, 2019 (edited) Interesting, as it works for me. I tested every way I could think of. class Game_BattlerBase def rec; check_for_zombie ? sparam(2) * -1 : sparam(2); end def hrg; check_for_zombie ? (check_for_poison ? xparam(7) : xparam(7) * -1) : xparam(7); end def check_for_poison; @states.include?(2) || @states.include?(40) || @states.include?(65) || @states.include?(74); end def check_for_zombie; @states.any? {|st| $data_states[st].zombie}; end end Edited May 22, 2019 by roninator2 1 1 Share this post Link to post Share on other sites
Chaos Krux 29 Posted May 23, 2019 11 hours ago, roninator2 said: Interesting, as it works for me. I tested every way I could think of. class Game_BattlerBase def rec; check_for_zombie ? sparam(2) * -1 : sparam(2); end def hrg; check_for_zombie ? (check_for_poison ? xparam(7) : xparam(7) * -1) : xparam(7); end def check_for_poison; @states.include?(2) || @states.include?(40) || @states.include?(65) || @states.include?(74); end def check_for_zombie; @states.any? {|st| $data_states[st].zombie}; end end Perfect, thanks. I was just putting the lines in wrong, like I thought. It works great now! And this way, I can still have Doom heal when zombified, which is a win. 1 Share this post Link to post Share on other sites
roninator2 257 Posted May 23, 2019 13 hours ago, Chaos Krux said: Doom heal Interesting. Does this do anything special? 2 Share this post Link to post Share on other sites
PhoenixSoul 1,404 Posted May 24, 2019 @roninator2 As I recall, Doom is a special state in the FF games that when inflicted, causes instant death, or in the case of a couple of the FF games, does so after a set amount of time passes, which is usually indicated by a number above the character. 1 Share this post Link to post Share on other sites
Chaos Krux 29 Posted May 24, 2019 16 hours ago, roninator2 said: Interesting. Does this do anything special? 12 hours ago, PhoenixSoul said: @roninator2 As I recall, Doom is a special state in the FF games that when inflicted, causes instant death, or in the case of a couple of the FF games, does so after a set amount of time passes, which is usually indicated by a number above the character. That's right, Phoenix. Only, since RPG Maker has no way of implementing that by default, I set Doom up so that it takes 25% of a character's MAX HP over 4-5 turns. It doesn't kill them, but It'll take their HP down to 1 in just a few turns if nothing is done about it. When a character is Zombified, they are healed 25% of their MAX HP each turn instead, as well as being immune to instant-death attacks. 1 Share this post Link to post Share on other sites