In my game, the player starts with a set of equipment and unlike many other hack-and-slash RPG's, this base set of stuff never changes - the player never acquires a new weapon or armor.
The only way how to keep up with ever stronger monsters is to enchant the equipment with spells. Each piece can hold a couple of different enchants and as the player slays monsters he gets access to stronger spells for enchanting.
The problem is some encounters favor different enchant strategies than others. While for one type of monster it would be better to go for resistance against magic, another monster is not using magic at all so physical resistance is more important. I want the players be able to replace their enchantments obviously, but i don't want the player to feel like he must redo all his gear before every encounter to be prepared - that would be too annoying.
How would i go about limiting the availability of removing enchants from gear so it does not become a tedious thing to do, but instead is an exciting event in gameplay? (like: "Cool i can now upgrade those old enchants on my staff which will make slaying those ogres easier!") Also the possibility of removing enchants shouldn't be too rare, since it's the core gear-progression mechanic.
The only thing i could think off was using special scrolls to remove the enchants. These scrolls would drop from monsters and the drop chance will be based on how "weak" the enchants the player uses are compared to his level. The weaker the enchants, the higher a chance to get a disenchant scroll and vice versa. However there is a problem that the player can simply farm for the scrolls and save them for later thus allowing him to redo his gear before every encounter in end-game, where the monsters are the hardest. I would like to avoid that.