I'm trying to make a 'repel' item (ex. Pokemon) that halves (standard) or eliminates ('max repel' version) encounters for [x] number of steps. This is the easy part - I've got it set so the item adds a custom state with the party ability 'encounter half' or 'encounter none' and removes the effect after [x] steps. The problem is I want the repels to have a sort of drawback so as not to encourage the player to abuse them and avoid encounters altogether. The justification is that the repel is a foul-smelling liquid the characters douse themselves in to keep monsters away, but it's sticky and makes fighting while covered in it difficult. For the one that halves encounters, I want it to cut the party's stats in battle by 50%. If the player uses these items more for backtracking through areas with lower-level enemies this wouldn't be a problem for them, but for those who would abuse the effect for a halved encounter rate they will need to be prepared that same/higher-level enemies might stomp them when they do get that rare encounter. Ideally I want to cut attack/defense/etc, but the parameters can only be adjusted by percent from 0-100 so I'm not sure how to create a negative value/debuff to those stats when the state is active. I know I can do -50% on ex-parameters (evasion, hit rate, etc) so if it's a pain or impossible to do with attack/defense/etc then I could settle with this. The one that eliminates encounters altogether while active is giving me more trouble. Obviously, since there are NO encounters (aside from scripted ones) while in this state, halved stats aren't really going to be a problem. So I thought, instead, the sticky liquid could simply make the characters move more slowly. To do this I set a common event with a move route to lower the player's speed on the map - so there's no random battles while it's active, so long as you don't mind walking x2 slower. The problem with this method is that when the repel item wears off, the movement speed doesn't, and I'm not sure how I would get it to revert the player's speed back to normal. Is there a better way to go about this sort of thing, either with eventing or a script? Any help would be appreciated!!