I can think of several things which wouldn't break with this?
- grabbing 
Creep.movewithvar x = Creep.prototype.move. - grabbing 
Creep.moveTowithvar x = Creep.prototype.moveTo. - grabbing 
Creep.moveByPathwithvar x = Creep.prototype.moveByPath. - calling 
c.moveTo()with any arguments - replacing the Creep move prototype with 
Creep.prototype.move = x;and having creep movement use the new function - replacing the Creep moveByPath prototype with 
Creep.prototype.moveByPath = x;and having creep movement use the new function - replacing the Creep moveTo prototype with 
Creep.prototype.moveTo = x;and having creep movement use the new function 
The only thing which would break, as far as I can tell, are:
- overwriting 
Creep.prototype.moveTo = x;and then expectingsomePowerCreep.moveTo()to use the new creep moveTo function - overwriting 
Creep.prototype.moveByPath = x;and then expectingsomePowerCreep.moveByPath()to use the new CreepmoveByPathfunction 
Both of these things are breaking only to people who've written PowerCreep code in the time since they've been out, and both have the easily fixable solution of overwriting Moveable.moveTo / Moveable.moveByPath. There's no way this can affect idle users, even if they extensively use the prototype system.