like with EQ there are actually TWO patching programs!
1) runs a program to make sure the actual patcher is updated (graphics, options, etc...) - this one is a basic box with a status bar, and it just updates the patcher if needed
2) this patches the actual game (exe, zones, etc...) - having external files (custom file stucture prevents some hacking) would prolly be the best way for this, so if there is only small changes, you dont have to update a 52MB exe file because one door doesnt open
3) then the second patcher opens the actual exe file with some kind of command line to prevent people from loading this file directly (e.g. "game.exe /something wierd here")... an idea for this is whenever there is a patch have it change the access command line, but then you would have to update the patch program (2) with one like (1)
- if you go this approach, might want to have the (1) patcher hidden, so people wouldnt even know it is there, this also would prevent some hacking