Are you in the Degrado lab? Jenny forwarded exactly this question to me.
The short answer is, your proposed new packer that optimizes ddg instead of total energy is probably the most straightforward method. “Straightforward” means probably several months of work.
The more general solution to this problem is multistate design. Your states are bound (optimized) and unbound (deoptimized). There is a multistate algorithm being included in the 3.2 release. I’m pasting part of an email:
What [you] described is basically multistate design, which I have been doing a lot of lately.
I have some unreleased code in devel/ that is really powerful, but which is not exactly a Mover; it doesn’t let you include multistate design as a step in a larger protocol. However, Justin Ashworth does have a multistate design mover that I believe will allow you to do something very close to what [you] described. I think its implemented in the “ProteinInterfaceMultistateDesignMover”.
That class will definitely be included in the upcoming release (3.2) which is in progress.”