Since Ditto won't work, you could make a wild Smeargle learn Substitute by using it with less than 25% health and then sketch it from the wild Smeargle. Wild Mr. Mime won't work since it's at too high of a level to know Substitute. According to the disassembly, the only trainer with Substitute...