string.find/upper/join and string.letters were removed from the string module in Python 3, so these call sites raise AttributeError (or NameError) when reached. Replaced each with the str method equivalent:
- otp/chat/ChatGlobals.py, ChatManager.py: string.find(message, ...) -> message.find(...)
- otp/level/LevelSpec.py: string.upper(type) -> type.upper()
- toontown/pets/PetBase.py, DistributedPetProxyAI.py, DistributedPetProxy.py: string.upper(valueName[0]) -> valueName[0].upper()
- toontown/pets/PetshopGUI.py: string.join(descList, '\n') -> '\n'.join(descList)
- toontown/shtiker/PhotoAlbumPage.py: string.letters -> string.ascii_letters (and added the missing import string)
string.capwords and string.digits are still in the Py3 string module, so QuestPoster's capwords usage is untouched.