An OOP interface for interacting with object databases in the mobile game IDOLY PRIDE.
Designed with ❤ by Ziyuan "Heartcore" Chen.
Refactored from gkmasToolkit by Kishida Natsumi,
which in turn was adapted from SolisClient by Vibbit.
Request API & decryption algorithms borrowed from HatsuboshiToolkit by DreamGallery.
- Fetch, decrypt, deserialize, and export manifest as ProtoDB, JSON, or CSV
- Differentiate between / add (apply patch to) manifest revisions
- Download and deobfuscate assetbundles and resources in parallel
- Media conversion plugins for Texture2D, AudioClip audio, and VideoClip video
import IdolyPrideObjectManager as ipom
m = ipom.fetch() # fetch latest
m.export("manifest.json")
m_old = ipom.load("octocacheevai")
m_diff = m - m_old
m_diff.export("manifest_diff.json")
m.download("img_card_full_1.*", image_format="JPEG", image_resize="16:9") # character cards
m.download("sud_music_short.*inst", audio_format="WAV") # instrumental songs
m.download("mov_card_full.*1080p.mp4") # animated character cards
m.download(
"sud_vo_adv_main.*",
path="mainstory_voicelines",
categorize=False, # merge subtypes into one directory
audio_format="mp3", # applies to all subsongs
unpack_subsongs=True, # unpack ZIP to output directory
)
m.download_preset("presets/wallpaper_kit.yml")manifest.decrypt.AESCBCDecryptor- Manifest decryptionmanifest.octodb_pb2.Database- ProtoDB deserializationmanifest.manifest.PrideManifest- ENTRY POINTmanifest.revision.PrideManifestRevision- Manifest revision managementmanifest.listing.PrideObjectList- Object listing and indexingobject.resource.PrideResource- Non-Unity objectmedia.dummy.PrideDummyMedia- Base class for media conversion pluginsmedia.image.PrideImage- PNG image handlingmedia.audio.PrideAudio- MP3 audio handlingmedia.video.PrideVideo- MP4 video handlingadv.adventure.PrideAdventure- Story script handlingadv.parser.PradvCommandParser- Story script parsing
object.deobfuscate.PrideAssetBundleDeobfuscatorobject.assetbundle.PrideAssetBundle- Unity objectmedia.dummy.PrideDummyMediamedia.image.PrideUnityImage- Texture2D image conversionmedia.audio.PrideUnityAudio- AudioClip audio conversionmedia.video.PrideUnityVideo- VideoClip video conversion