Well.. I've been working on a weapon "upgrade" system. So I have a ton of variables... Pistol_Capacity, Pistol_Damage, Pistol_Speed, Pistol_RealoadTime... Then I have Shotgun_Capacity, etc... SMG_Capacity, etc, Rifle, Grenade Launcher, blah blah blah. I create an event sheet for upgrading all of the pistol attributes. Six jillion lines of code later Im done. Now I copy it. I have to go through each line - selecting each variable - and scrolling through the hundreds of variables to replace pistol_[...] with shotgun_[...]. Now if I could highlight the events, right click and select something like "replace variable" - Have one input box to select the variables present in the highlighted events - select the one I want to replace (say... pistol_damage) - and a second input box i can put in "shotgun_damage" - and presto. Do it for each variable and BAM saved myself an hour.
It's just like replacing sprite. You make a set of events for "enemy1". You duplicate it, replace enemy1 with enemy2. Change a few things - health, movement, etc. It's a lot quicker then manually replacing each reference to enemy1 through out the events. Same as what I'm getting at with variables. Maybe there is a better method (for me at the moment) - using functions and parameters - and referencing parameters to variables? I don't know. Even then, when a single entity is making use of a bunch of variables (and when those variables are only used by this single entity/sprite) and you duplicate that entity and want it to make use of duplicates of the first entities variables I gotta go through and manually change every single variable for entity 2.