[{"data":1,"prerenderedAt":225},["ShallowReactive",2],{"article-pokemon-emerald-companion":3},{"_path":4,"_dir":5,"_draft":6,"_partial":6,"_locale":5,"title":7,"description":8,"date":9,"slug":10,"category":11,"media":12,"source":19,"project_page":20,"body":21,"_type":219,"_id":220,"_source":221,"_file":222,"_stem":223,"_extension":224},"\u002Fpokemon-emerald-companion","",false,"Pokémon Emerald Companion","Companion app for the Thor's bottom screen that reads Pokémon Emerald's memory via RetroArch and shows live party, battle, IVs\u002FEVs, encounters and map info.","2026-09-26 09:53","pokemon-emerald-companion","companion",[13,16],{"type":14,"url":15},"image","\u002Fcontent\u002Fpokemon-emerald-companion\u002Fpreview.webp",{"type":17,"url":18},"video","https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=FVqNzKuIjeQ","https:\u002F\u002Fwww.reddit.com\u002Fr\u002FAynThor\u002Fcomments\u002F1wngmnf\u002Fpok%C3%A9mon_emerald_companion\u002F","https:\u002F\u002Fgithub.com\u002Fpazukishin\u002FPokeEmeraldThorCompanion",{"type":22,"children":23,"toc":214},"root",[24,33,48,53,154,159,165],{"type":25,"tag":26,"props":27,"children":29},"element","h2",{"id":28},"description",[30],{"type":31,"value":32},"text","Description",{"type":25,"tag":34,"props":35,"children":36},"p",{},[37,39,46],{"type":31,"value":38},"Thor Companion is an Android companion app for playing Pokémon Emerald on RetroArch from an AYN Thor. The game runs on the main screen; the app occupies the compact 3.92-inch secondary display and shows live game info read over RetroArch's network control interface (",{"type":25,"tag":40,"props":41,"children":43},"code",{"className":42},[],[44],{"type":31,"value":45},"READ_CORE_MEMORY",{"type":31,"value":47}," over UDP, with a short timeout so gameplay is never blocked).",{"type":25,"tag":34,"props":49,"children":50},{},[51],{"type":31,"value":52},"What it shows on the bottom screen:",{"type":25,"tag":54,"props":55,"children":56},"ul",{},[57,113,123,133],{"type":25,"tag":58,"props":59,"children":60},"li",{},[61,67,69,75,77,83,84,90,91,97,98,104,105,111],{"type":25,"tag":62,"props":63,"children":64},"strong",{},[65],{"type":31,"value":66},"Live party \u002F battle info",{"type":31,"value":68}," — stats in a 2×3 grid, IVs\u002FEVs with perfect-31 values highlighted, nature with stat modifiers, ability with its description, happiness, Hidden Power type, held items (marked with a Poké Ball badge), HP colour-coded, and status badges (",{"type":25,"tag":40,"props":70,"children":72},{"className":71},[],[73],{"type":31,"value":74},"SLP",{"type":31,"value":76},", ",{"type":25,"tag":40,"props":78,"children":80},{"className":79},[],[81],{"type":31,"value":82},"PSN",{"type":31,"value":76},{"type":25,"tag":40,"props":85,"children":87},{"className":86},[],[88],{"type":31,"value":89},"TOX",{"type":31,"value":76},{"type":25,"tag":40,"props":92,"children":94},{"className":93},[],[95],{"type":31,"value":96},"BRN",{"type":31,"value":76},{"type":25,"tag":40,"props":99,"children":101},{"className":100},[],[102],{"type":31,"value":103},"FRZ",{"type":31,"value":76},{"type":25,"tag":40,"props":106,"children":108},{"className":107},[],[109],{"type":31,"value":110},"PAR",{"type":31,"value":112},"). Wild and trainer battles are detected automatically; trainer battles show the opponent's full team of 6.",{"type":25,"tag":58,"props":114,"children":115},{},[116,121],{"type":25,"tag":62,"props":117,"children":118},{},[119],{"type":31,"value":120},"Evolution chains",{"type":31,"value":122}," — shown as a tree with the method (level, stone, trade, happiness, special form, ...), including branching evolutions like Eevee or Wurmple, filtered to species obtainable in Emerald (national dex ≤ 386).",{"type":25,"tag":58,"props":124,"children":125},{},[126,131],{"type":25,"tag":62,"props":127,"children":128},{},[129],{"type":31,"value":130},"Map and encounters",{"type":31,"value":132}," — current map and encounter list with species, levels, method and capture rate.",{"type":25,"tag":58,"props":134,"children":135},{},[136,141,143,152],{"type":25,"tag":62,"props":137,"children":138},{},[139],{"type":31,"value":140},"Offline-first data",{"type":31,"value":142}," — encounters, trainers, items (including hidden ones), sprites, types, abilities, Pokédex flavor text and evolution chains are bundled locally, generated from ",{"type":25,"tag":144,"props":145,"children":149},"a",{"href":146,"rel":147},"https:\u002F\u002Fgithub.com\u002Fpret\u002Fpokeemerald",[148],"nofollow",[150],{"type":31,"value":151},"pret\u002Fpokeemerald",{"type":31,"value":153}," data. Only item detail descriptions fall back to the network.",{"type":25,"tag":34,"props":155,"children":156},{},[157],{"type":31,"value":158},"The project was developed entirely with AI assistance; the author notes it worked well in early game but is not fully tested — use at your own risk.",{"type":25,"tag":26,"props":160,"children":162},{"id":161},"setup-guide",[163],{"type":31,"value":164},"Setup guide",{"type":25,"tag":166,"props":167,"children":168},"ol",{},[169,188,201],{"type":25,"tag":58,"props":170,"children":171},{},[172,174,179,181,186],{"type":31,"value":173},"You need your own ",{"type":25,"tag":62,"props":175,"children":176},{},[177],{"type":31,"value":178},"Pokémon Emerald Version 1.0 (USA)",{"type":31,"value":180}," ROM (the RetroAchievements version) running in RetroArch with the ",{"type":25,"tag":62,"props":182,"children":183},{},[184],{"type":31,"value":185},"V.GBA-Next",{"type":31,"value":187}," core. No ROM is included with the app.",{"type":25,"tag":58,"props":189,"children":190},{},[191,193,199],{"type":31,"value":192},"In RetroArch, enable ",{"type":25,"tag":40,"props":194,"children":196},{"className":195},[],[197],{"type":31,"value":198},"Settings > Network > Network Control Interface or Network Commands",{"type":31,"value":200}," (with memory reading allowed) and configure the UDP port used by the app. Note: some RetroArch builds show the option but it doesn't actually work — enable it, save, restart RetroArch, and check it's still enabled; if not, use another build.",{"type":25,"tag":58,"props":202,"children":203},{},[204,206,212],{"type":31,"value":205},"Install a prebuilt APK from the repository's ",{"type":25,"tag":40,"props":207,"children":209},{"className":208},[],[210],{"type":31,"value":211},"releases\u002F",{"type":31,"value":213}," folder (or build from Android Studio, Android SDK 35). The device must be able to reach the Thor's IP address.",{"title":5,"searchDepth":215,"depth":215,"links":216},2,[217,218],{"id":28,"depth":215,"text":32},{"id":161,"depth":215,"text":164},"markdown","content:pokemon-emerald-companion:index.md","content","pokemon-emerald-companion\u002Findex.md","pokemon-emerald-companion\u002Findex","md",1794296044464]