RachelB
She/Her
Player (132)
Joined: 12/3/2011
Posts: 1579
Don't bother with dolphin's memory viewer, it's a waste of time. Cheat engine will work much better.
Player (100)
Joined: 3/20/2008
Posts: 466
Location: Montreal, Quebec, Canada
What about lua scripts? I didn't find a lua menu in the latest official build (v3.5) and it will almost certainly be needed for an rngdisplay script similar to the following:
Language: rngdisplay

function nextrng(r1, r2, r3) return AND(XOR(SHIFT(r3, 5), SHIFT(r2, -11), SHIFT(r1, -1), SHIFT(r2,15)),0xFFFF) end function rngsim(n) local rngbase=0x03000000 local result = { memory.readword(rngbase+4), memory.readword(rngbase+2), memory.readword(rngbase+0) } for i = 4, n do result[i] = nextrng(result[i-3],result[i-2],result[i-1]) end return result end local phit = 0x0203A550 local pdmg = 0x0203E1BE local pcrt = 0x0203A556 local ehit = 0x0203A5D0 local edmg = 0x0203E1BC local ecrt = 0x0203A5D6 while true do local nsim = 20 rngs = rngsim(nsim) for i = 1, nsim do gui.text(228, 8*(i-1), string.format("%3d", rngs[i]/655)) end gui.text(210,0,"RNG1:") gui.text(210,8,"RNG2:") gui.text(210,16,"RNG3:") gui.text(194,24,"Next RNs:") gui.text(0,0,"Player") gui.text(0,8,"Hit: " .. memory.readbyte(phit)) gui.text(0,16,"Damage: " .. memory.readbyte(pdmg)) gui.text(0,24,"Crit: " .. memory.readbyte(pcrt)) gui.text(0,40,"Enemy") gui.text(0,48,"Hit: " .. memory.readbyte(ehit)) gui.text(0,56,"Damage: " .. memory.readbyte(edmg)) gui.text(0,64,"Crit: " .. memory.readbyte(ecrt)) emu.frameadvance() end
RachelB
She/Her
Player (132)
Joined: 12/3/2011
Posts: 1579
Nope, no lua.
Joined: 7/6/2013
Posts: 9
Location: United Kingdom
So after some messing around with Cheat Engine and figuring out that I was searching in the completely wrong format with the help of Vykan, and this page. I have a pointer set- up for the start of the games memory, which should, upon reloading dolphin re-orient itself to the correct place. I now hit another brick wall. I have no clue what formats to actually search for values in, in this case I'm looking for RNG values. I know how to cycle RNG. I tried using Float Big Endian (no idea what this is) like Abahbob used, but I got all numbers with loads of decimals and stuff, so I don't think that's what I was looking for.
Player (100)
Joined: 3/20/2008
Posts: 466
Location: Montreal, Quebec, Canada
I found a Path of Radiance TAS WIP by accident on NicoVideo. It was so good I had to upload it to youtube (see below). Link to video Nicovideo link- Click where it says “mylist/38311285” in the video description for the full playlist Braster’s user page- The guy who uploaded the video. It says he “started a broadcast” a bunch of times in his description, could mean he streams his FE9 TASing. The run is on the Japanese version and on maniac mode difficulty. In addition to the usual path drawing RNG manipulation, I noticed the RNG was also manipulated by pressing Y, which goes to the chosen character’s menu (where you see their portrait, stats, etc). In fact, this was used to manipulate BEXP level-ups in the base, which is very encouraging. The run also uses the 255% crit glitch, a glitch where slim weapons & thunder tomes get maxed out crit if you make a forge with reduced crit. This makes Mia extremely valuable, as vantage + 100% crit = carnage. Unfortunately the WIP ends on chapter 10 and before Marcia is used, it really leaves me wanting more. My motivation to TAS 9 and 10 is now in overdrive now that I know what the final result looks like. I could seriously see either becoming a TAS of the year candidate. I definitely want to get into contact with the maker of the run since clearly that person has cracked the game’s RNG and at the very least knows the memory addresses that affect the RNG. From what I could tell the run looks very optimized already, so maybe I’ll just wait for him to finish it and encourage him to submit here.