Moving this to Plugin Requests, as I believe there's no way to do this without either using an existing plugin (like Buffs & States Core) or creating a bit of new code of your own.
This is a cool gameplay idea,
@Grunwave. I'll take my shot at writing the code for you. Replace N in the third line with the ID of the State that you want to replace MDF's value with that of AGI. I haven't tested this, so let us know if this doesn't work and maybe someone can spot the mistake.
JavaScript:
Game_BattlerBase.prototype.param_rogue = Game_BattlerBase.prototype.param;
Game_BattlerBase.prototype.param = function(paramId) {
if (this.isStateAffected(N) && paramId === 5) {
paramId = 6;
}
var calc_value = this.param_rogue.call(this, paramId);
return calc_value;
};
Essentially what this is doing is aliasing the old method, and first checking to see whether the battler has the State and whether the Parameter ID being checked in this specific call to the method is 5 (MDF). If so, it changes the argument paramId to 6 (AGI) immediately. Then, it calls the original method and all of its functionality - usually using the normal paramId being passed into the alias, but if it was changed by the above it will use the new AGI parameter instead to calculate the final value. Lastly, it returns the final value to whatever method was asking for the parameter's value.