The heartstone_middle_letter function was added in r28911, but it does not correctly handle some special characters. As best we can tell, the name of the monster is encoded in UTF-8 and stripped of spaces, and then the middle byte is selected (if there's an odd number of bytes and the middle...