I just installed vB Drafts.

vB Drafts adds a save draft feature when using Quick Reply, New Reply, New Thread and Private Messaging.

When writing a message you can choose to save it and return to it later without publicly publishing it.

There are two saving options, one is where drafts are automatically saved every X minutes where process is mostly invisible to the member and is a background process and where drafts can be saved at any point by clicking a button. You can assign each type to individual usergroups separately.

Drafts are saved and restored in the following manner. One new thread per forum, one reply per thread, one PM reply per PM and one new PM. If a saved post/thread/PM is found, the text is automatically restored to the reply field when the member returns to the page. To restore a thread, they just visit the New Thread page in the forum in which it was being written, it will be there waiting.

To remove old draft data which has not been deleted by its author, a scheduled task runs daily which removes any drafts data which is older than X days.