Posts for FatRatKnight

Editor, Experienced Forum User, Published Author, Skilled player (1175)
Joined: 9/27/2008
Posts: 1085
http://tasvideos.org/userfiles/info/12384433340285997 I've distracted myself on this game, yet again. This time I looked a little harder into memory for things related to tethered objects. Rotational position happens to be a two-byte value at address 0068 and speed is one-byte at 006B. There are 128 positions for the tether going by the position's high-byte, and positions 0x40 to 0x4F (bottom to bottom-left) sets up the crystal bonus, while 0x70 to 0x7F (top-left to top) will trigger the bonus. I'm sure there are ways to further improve this planet. The way the crystal spins is a difficult and involved process while going through that water tunnel and shooting at stuff from off screen. I'm pretty happy how much faster I went, though. I'm going to work on Planet 13. Time bombs, two sets of strong thrusters, and the fancy jetpod that can drag wormholes. If improvements are found in Planet 7, I will note the game has so far proven to be sync-stable with regards to everything but the RNG. The RNG is really volatile, but it can be almost completely controlled through player 2, so syncing things up look to be a matter of messing with player 2 until it works.
Editor, Experienced Forum User, Published Author, Skilled player (1175)
Joined: 9/27/2008
Posts: 1085
I actually prefer the 2nd place in the high scores. It tells me that whoever is going through this insanity, perhaps blindfolded and doing dishes at the same time, is also modest enough to remain in 2nd place even through the legions you find in this difficulty. Besides, it's too easy to find a few things the TAS skips to make up that last bit of difference to hit the top spot. If someone ever produces an improvement to this run, I would suggest getting within one point of the 1st place score if possible. Show TAS control over score even as you fight through this insane difficulty!
Editor, Experienced Forum User, Published Author, Skilled player (1175)
Joined: 9/27/2008
Posts: 1085
Basically, beat Mecha Santa. You get an ending. * If you did not go through the secret stage x, you get the usual ending. * If you cleared stage x, you get the alternate ending. Clearing stage x means you go through another stage. Obviously skipping it means you will go to the normal ending, and stage 4 will go just as fast regardless. The normal ending is much faster to do, but where's the fun in the "impossible" difficulty if you skip a stage?
Editor, Experienced Forum User, Published Author, Skilled player (1175)
Joined: 9/27/2008
Posts: 1085
Another thought is the in-game replay. Save the different replays from the game itself and compare the two. Even better if you know how the game stores replays. ... It's a thought... Wouldn't hurt to see what the game itself picks up rather than what we feed it.
Editor, Experienced Forum User, Published Author, Skilled player (1175)
Joined: 9/27/2008
Posts: 1085
If there's an improvement, and the TASer feels like manipulating the score at the time, I would love to see it miss the first place by exactly one point. But I have to agree, submit the run you've got once you feel ready. It already stands on its own as a good TAS to watch. I'm guessing there's a lot of text to write up? If you're worried, you can edit your submission text later if you find mistakes or realized there's more stuff to explain. We're also pretty patient (I hope a TASing community has patience, considering what TASing takes), so if you really want the time, I don't want to put harsh pressure on you. You have a complete run, and sometime in the future, you're likely to submit it. I'm already happy thinking that.
Editor, Experienced Forum User, Published Author, Skilled player (1175)
Joined: 9/27/2008
Posts: 1085
Rectangles have four sides. Games might have two numbers for position, then four numbers to define the hitbox. Or possibly only two numbers, using the position itself as one corner of the box. As for what numbers are used in the hitbox, that depends on the game. What I did is identify the basic object structure, look at numbers I know belonged to what object, and made a guess as to the relation. I know a Soul Blazer object uses 64 bytes and a linked list structure, and when I knew how these objects lined up, some numbers right by the position looked pretty suspicious. I made the leap that they might involve hitboxes, and they were related. Soul Blazer stores hitbox information as how far away each side is from the position. Naturally, these numbers don't change due to position since they already assume position is used from other calculations. The numbers for the top-left corner subtracts from the position to get said corner, while the bottom-right corner adds to the position. It wasn't that one number was negative and the other positive, but that different operations were used for the sides. The numbers really shouldn't be larger than the expected size of the object, values more than 100 pixels probably aren't related to hitboxes. In any case, most games should use some sort of object structure to keep information about a lot of things, whatever form they take. Once you know that these bytes definitely go to this object, see if those bytes have anything to do with what you're looking for. It's also possible the game has multiple spots in memory that relate to the same object, so perhaps those bytes aren't the only ones. That's been my experience so far.
Editor, Experienced Forum User, Published Author, Skilled player (1175)
Joined: 9/27/2008
Posts: 1085
Just to be clear, I make one submission (record keeping fastest main movie), and one WIP upload which I point to in the submission text ( http://tasvideos.org/userfiles/ - flashier ending that doesn't involve gameplay). But yeah, that's about it. As for the score, we can easily go either way for what's more aesthetic with the points. One point short, exactly matching, or one point above would be fun. But I like the idea that, despite doing this blindfolded and while doing dishes, reallyjoel's mom also has the modesty to merely remain in second place even against such legions. But the score is just aesthetics. How easy does it look to tweak your points without wasting time?
Editor, Experienced Forum User, Published Author, Skilled player (1175)
Joined: 9/27/2008
Posts: 1085
Yeah, my apologies. http://tasvideos.org/userfiles/info/12283551033456152 Soul Blader (J), current WIP. This is very early in the run. There are a few improvements I can try. Notes are in the link. http://tasvideos.org/userfiles/info/12283651408702529 Soul Blazer (U), current WIP. Considering my lack of progress, I think it's a bit unfair to be keeping the file with me. While progress is uncertain with me, it will certainly be difficult for others if I don't share my latest stuff. I've been putting a few things I know here. Since I am having difficulties focusing on TASing efforts, I would at least get some things up to help smooth out some difficulties for any potential TASers out there. http://tasvideos.org/userfiles/info/12283335305507377 Here's my latest lsnes script. Can be run on top of any other scripts you have running, and it shouldn't interfere. Shows boxes now.
Editor, Experienced Forum User, Published Author, Skilled player (1175)
Joined: 9/27/2008
Posts: 1085
You can submit one movie, and have that one get straight to the very end as fast as possible. You can probably stop at the last hit against Mecha Santa if it's enough to reach the ending, and it's probably fine if the last scene is the stats screen. ... And upload a different movie that lets the ending cutscene play out, show off the stats for a few seconds, and write in whatever (short) message you like for name entry. And in the submission text, point encoders to this alternate version that gives a slightly better looking ending while the main submission file is used for record keeping. At least, that's what I recommend trying. I've done that, submitted a run that's enough to reach the ending, and offered an alternative movie that messes with the name entry just to give that feeling of completion. The main encodes use the name entry version, as it changes absolutely nothing before then, and still shows the ending exactly like the main version. As for my thoughts, I don't rightly see how mere humans can complete this. Couldn't weave around a few more shots between the insanity that is Mecha Santa at reallyjoel's mom difficulty? Definitely a fun TAS to watch. Also... That Multi Hand Storm. What the...
Editor, Experienced Forum User, Published Author, Skilled player (1175)
Joined: 9/27/2008
Posts: 1085
From the looks of things, TASVideos rules are pretty rigid about "no cheats." Another community uses unlocking cheats regularly for time trial records. Without the cheats: * We can't use optimal parts in many game modes. * It's theoretically possible that we can't beat an existing record without these parts. * Even if we do beat all records, it's certainly not the theoretical limit because we don't have the parts. Of course, with the cheats: * We can't match what happens from a clean save and unmodified game with a movie. * It's difficult for a community of perfectionists to define a general-purpose hard line for cheats other than "none ever." * Whether or not we state this as an exception, people might refer to the exception with distressing frequency. However, the parts have no effect on Story Mode, right? Verification movie to unlock Very Hard for the full story, and TAS that. Other modes still have to deal with a mess in definitions and intent. I'm hoping outlining what I see helps in the discussion.
Editor, Experienced Forum User, Published Author, Skilled player (1175)
Joined: 9/27/2008
Posts: 1085
So basically, the "clone" glitch: * Can only get a star where you already fulfilled the requirements to make it appear * Does NOT allow you to "double count" any star to your total * Only serves to move an existing star to your location (EDIT: or get 255 coins or other silly things) This doesn't appear to interfere with any 100% definitions. Except possibly coin records.
Editor, Experienced Forum User, Published Author, Skilled player (1175)
Joined: 9/27/2008
Posts: 1085
Adding one frame of delay is simple enough. Adding two frames or more usually requires a table and functions specifically built for it. An extremely messy way to add two frames of delay would be the following:
Language: lua

local OldVal_TwoFramesAgo= 0 local OldVal_OneFrameAgo= 0 while true do gui.text(15,15,OldVal_TwoFramesAgo) OldVal_TwoFramesAgo= OldVal_OneFrameAgo OldVal_OneFrameAgo= memory.readbyte(0x0000) emu.frameadvance() end
The extremely messy way requires five lines every time you want to grab just one more value. It's extremely messy. Also, loadstates will show you stuff from before the load until enough frames pass. Less messy sorts of ways would require making a few functions specifically to handle these things for you:
Language: lua

local ReadTheseAddresses= {0x0000,0x0005,0x0103,0x0244} -- and so on local MemoryHistory= {} local function StoreStuff() local fc= emu.framecount() MemoryHistory[fc]= {} for i= 1, #ReadTheseAddresses do local addr= ReadTheseAddresses[i] MemoryHistory[fc][addr]= memory.readbyte(addr) end end local function ReadOldByte(address,FramesInPast) local t= MemoryHistory[emu.framecount() - FramesInPast] if t then return t[address] end end while true do StoreStuff() gui.text(15,15,ReadOldByte(0x0000,2) or "nil") emu.frameadvance() end
But at least you'll have a complete history of select memory addresses. If the value hasn't been read up by the lua script, ReadOldByte should return nil, which needs to be checked for to avoid other errors. Also, it's just one more line to add for each address you want to check, as well as a quick addition to a list, rather than five (or more) lines per address you want to look at. These are actually more general techniques than anything specific for emulation. It's less to do with the functions handed to you by FCEUX or other emulators and more to do with knowing what you can do in lua. It takes a lot of practice understanding lua as a whole before you can come up with an arbitrary way of delaying the display as infinitely as you like. Then again, knowing what functions are available takes a bit of memorization as well. I've used emu.framecount and memory.readbyte here. In any case, if you can read and understand the code here, especially with my lack of comments in there, that might help give some idea what lua can do. And you'll also know what to change in my sample code to get any amount of delay you like. For TASing, you usually want the most up-to-date internal stuff displayed, even if it's wildly out of sync with the game's display. If you plan to make a few videos, syncing up the lua with the game's display does have advantages, though.
Editor, Experienced Forum User, Published Author, Skilled player (1175)
Joined: 9/27/2008
Posts: 1085
I prefer gui.register for a lot of things.
Language: lua

local function Fn() gui.text(12,12,"Hello world") end gui.register(Fn)
Another way you can try it is:
Language: lua

gui.register(function() gui.text(14,14,"Hello again, world") end)
These code blocks should run just fine as is. Something you're probably not used to is the fact I'm not using in those code blocks at all are the while true do [...] emu.frameadvance() end loop that you're used to. It doesn't even exist in the code blocks above. Since the while true loop doesn't exist, the script doesn't get locked somewhere in a loop. It falls through, hits the end of the script, and finishes safely without a crash. Except for one thing: It registered a function for FCEUX to run whenever it updates the display. That function will be called repeatedly for you, no need to worry. That should take care of your "one frame late" problem, since the function is called when FCEUX want to update the display, instead of some odd emulation timing involving emu.frameadvance(). EDIT: Oh, your lua display was a frame early? Well then...
Language: lua

local OldValue= 0 while true do gui.text(12,12,OldValue) -- This displays what the value was a frame ago. OldValue= memory.readbyte(0x0000) -- Because it's updated after I show the text. emu.frameadvance() end
Slightly complicates things when you're adding an intentional delay.
Editor, Experienced Forum User, Published Author, Skilled player (1175)
Joined: 9/27/2008
Posts: 1085
Kurabupengin wrote:
The games I want to run: - Super Mario Bros. Special (SMB1 Hack) - Legend of The Blob Bros. 2 (SMB2 Hack) - Kirby's Adventure (Puresabe Hack) - Life Force - Kiwi Kraze (Probably) - Antartic Adventures (Probably) - Penguin Kun Wars (Problably)
I'm looking for co-authors. The JPN version of Life Force has a different enough set of changes that it might be worth using that instead of the USA version. For whatever reason, the JPN version of Life Force is called Salamander if you need help finding it. I recommend looking at this .fm2 (JPN version) for a bit if you want to try. Don't forget this thread.
Editor, Experienced Forum User, Published Author, Skilled player (1175)
Joined: 9/27/2008
Posts: 1085
Took me a while to realize Everhate is the one who's making those realtime speedruns. Let's see... Easy tricks I can think of that even real time can do that will still improve the TAS... Chests automatically open if you pass in front of them while facing up. If you don't want to open them, don't face up. You can pre-equip items. Just the items, not the sword, armor, or spell, as those simply reset your cursor back to nothing. You can, for example, move the cursor where the Dream Rod will appear, open the chest containing it, and walk over to Lisa without visiting the menu again. Saves one menu transition, and likely ideal to do when equipping the Flame Ball, as the cursor is already two steps to the item menu. There's a mild example already done with Medical Herbs and the fact the second is used without specifically equipping that. Those invincible gorillas can move in a more direct line by simply standing one full tile above them, then moving two tiles at a time to the right. They'll walk to the right. They won't throw the rock if you wait long enough. You're just outside their damage zone. It should be easy to get them to that lightning rock this way. These tricks come to mind. They may not be big, but it's probably best to share them. Progress is slow. I'm at the second island, Rockbird. That one with all the lakes. I'll probably upload a new WIP after getting the Critical Sword and death warping out of the volcanic island. Oh, and have an lsnes script: http://tasvideos.org/userfiles/info/11605836887834478
Editor, Experienced Forum User, Published Author, Skilled player (1175)
Joined: 9/27/2008
Posts: 1085
Aside from herb usage and health management, planning ahead for bosses generally doesn't provide much benefit. I just figure out how the fight goes when I get there. But it's still good to know what to expect from the bosses. Also, it's not just the room layout, but the first boss also does one point less damage per fireball. This little fact means (J) can just run up and stab the boss without any further motion, using an herb to keep alive, trivial even in real time. (U) is much trickier, and a run must go to a side path to delay the boss in order to survive long enough. About the versions, I've actually decided to stick with the current (U) WIP that I have. I realized with my earlier habits that I tend to lose interest, staying with what I have now and going with it will maximize the chances I produce a complete run. The more time that passes since I start a project, the more likely I just stop without ever coming back to it. But if I can still keep going after I get a complete TAS, I'll go back and finally add in the improvements and try to get perfection, or the closest thing I can reach to it, under both versions. Knowing I have a complete run will let me relax a little more, in any case. For this decision, I did TAS ahead with the 24 GEMs I ended with. Turns out I didn't actually need more than that. A touch of manipulation keeps up the flow of GEMs and my arrows keep killing enemies in all the important spots. Expect further progress sometime in the future. I have been analyzing the internal structure of the game for a bit... An Snes9x script shows me some suspicious boxes. Download Snes9x_SB_boxes.lua
Language: lua

local R2u,R2s= memory.readword, memory.readwordsigned local function HitBoxes() local Panic= 0 local Next= R2u(0x7E06A6) -- Soul Blazer (U) -- local Next= R2u(0x7E06A3) -- Soul Blader (J) local total= 0 local CamX, CamY= R2s(0x7E0052)+16,R2s(0x7E0054)+16 while Next ~= 0 do Panic= Panic+1 if Panic > 255 then gui.register(function() end); print("Panic"); return end local Addr= 0x7E0000 + Next if R2u(Addr+0x16) < 0x8000 then local X ,Y = R2s(Addr+0x00)-CamX, R2s(Addr+0x02)-CamY local Hx1,Hy1= R2s(Addr+0x08), R2s(Addr+0x0A) local Hx2,Hy2= R2s(Addr+0x0C), R2s(Addr+0x0E) gui.box(X-Hx1,Y-Hy1,X+Hx2,Y+Hy2,0x00FF0040,0x00FF00C0) end Next= R2u(Addr + 0x3E) end end gui.register(HitBoxes)
Editor, Experienced Forum User, Published Author, Skilled player (1175)
Joined: 9/27/2008
Posts: 1085
Hmm... I know the game version I'm using in that WIP is (U), not (J). I'm not aware of any particular settings that might cause a desync. Look in the message log and see if lsnes gives a warning about a mismatched ROM. I'll take a second look at my settings if you confirm you're using a (U) ROM, but I am using a Windows build of lsnes. EDIT: Updated the descriptions in the movie information what version I'm using. By the way, those WIPs have no subtitles, since I didn't expect any need for them, yet.
Editor, Experienced Forum User, Published Author, Skilled player (1175)
Joined: 9/27/2008
Posts: 1085
The Wanderer wrote:
There's no chance of me completing a translation far enough to be useful in time for anything to do with this run, but if there's anything in particular where you'd like to check if it's different, please feel free to point me to the appropriate Japanese text and I can see if I can find anything out.
Thanks for the offer. All I ask is that you keep up in my WIPs (and hope they are sufficiently entertaining) and take a brief look at my subtitles relating to the texts. I don't have any particular bits to look at, really. As for Critical Sword versus Lucky Blade, this one-hit-kill mechanic does have some interesting implications. I need GEMs to throw Light Arrows everywhere, and there's a lot of enemies out of immediate reach, though by the time I get there, the Magic Armor is close by and gives me lots more arrows. The Lucky Blade, when equipped, will definitely give more GEMs to throw out there, but switching weapons do take a little time. I still haven't had success with bonus damage against bosses (U). However, other enemies in the boss room do take fatal damage, as my earlier tests forgot to equip the Critical Sword then. I'll keep checking at times to see if I can get extra damage in. The most attractive bit for JPN is the smaller downtime between the action stuff. I personally feel the run is a lot smoother to watch because of this, as the time taken is reduced by a very significant factor (each character takes one frame, not three) but if the English text is that important, I can try to keep a USA run in parallel. Also, I have to redo a bit further back than just the end parts. Those, uh... Stalker lizards (my name for those disappearing ones) take 60 more frames to kill by sword rather than by arrow, as they do disappear and become unable to be hit after the initial invincibility wears off. The solution I like best is to manipulate more GEMs in some rooms. Also, I can keep most of the parts I've TASed assuming the RNG is aligned how I like it.
Editor, Experienced Forum User, Published Author, Skilled player (1175)
Joined: 9/27/2008
Posts: 1085
I never uploaded a single video, ever. Or produced any of reasonable quality, for that matter. I don't believe I am in a better position, other than having lsnes up and running. I've looked into the Critical Sword for a quick moment. I'm currently asking myself "is it really nothing more than just every 16 frames?" A quick check, and it appears the game uses address 7E0312 and looks if the lower nybble is 0. It's a frame counter used for the RNG during screen transitions. It can't be that simple, can it? New plan: Get sword. Poke things dead every 16th frame on the dot. I'm going to produce a quick and dirty script for Snes9x and only allow L held on the magic frame and see what the extents are. EDIT: Well, snap. Critical Sword seems to kill everything not invincible or in a boss room in a single hit, forget about being a high enough level to swing it. Obviously the metal and spirit enemies are unaffected, but yeesh. This makes anything that allows us to walk close disappear in record time. Every 16th frame. I need to investigate bosses, though, but I don't think I'll one-hit them, because well... Boss.
Editor, Experienced Forum User, Published Author, Skilled player (1175)
Joined: 9/27/2008
Posts: 1085
The version differences aren't just text. There are minor gameplay tweaks as well. Also, the text itself would cause a change in one part of world 2: How I return home for the first time. The Strange Bottle and death texts mean that in the USA version, it's actually faster to just walk home, whereas JPN texts would probably make the death warp faster. The difference in the route really is that close. Although the text speeds would cause a change in luck manipulation, it still has a very real change in one particular path. And if whether the run is readable comes into question, subtitles is a quick small fix. With my lack of Japanese language, I won't be translating Soul Blader, and would just subtitle in a quick summary of my impression with Soul Blazer. I'm still making the switch, unless I get an overwhelming impression of the audience disliking this change soon. I still need to poke about with the Critical Sword to see what I can do with it. I probably should make that a priority and see what changes when using it. There is one type of enemy that comes to mind. Its defense means it takes only 1 damage from our swings, and they have a lot of HP to cut through. Those hidey shelled hermit crabs or whatever in the ocean in particular. 15 HP. 1 HP at a time takes a while. Magic ignores defense, so at 10 damage per "hit" and two hits from the same spell, that's 104 frames saved. Strange Bottle might help here. But what about the Critical Sword? That I need to answer somehow. I'm curious if anyone here actually watched my WIP, or whether they're still trying to get lsnes to work. I find BizHawk harder to use with my preferences. I'd sure love to hear thoughts! I'd also love an encode. (I have no experience making them, and you'll get a quick thanks. That should be plenty of motivation!)
Editor, Experienced Forum User, Published Author, Skilled player (1175)
Joined: 9/27/2008
Posts: 1085
The reference manual I'm using says radians. Apparently the guides you were using didn't lead you correctly. I think you got the calculations backwards. It should be ( (that atan2 value) * 180 / math.pi), but... Well, if the numbers make enough sense as it stands, then you really shouldn't have trouble either way.
Editor, Experienced Forum User, Published Author, Skilled player (1175)
Joined: 9/27/2008
Posts: 1085
The function math.atan2 does not return the value in degrees. It returns a value in radians. 360 degrees per full revolution. 2 pi radians per full revolution (about 6.28 radians). This probably explains why you're not seeing the angle increase beyond the number 3. This is what I think, at a glance. Divide by math.pi and multiply by 180 if you want degrees.
Editor, Experienced Forum User, Published Author, Skilled player (1175)
Joined: 9/27/2008
Posts: 1085
I need to analyze the Critical Sword. While watching the RNG I know, I don't see any changes to it while running the published run. Whatever mechanic it's using isn't shared by the main RNG. I also seem to recall it getting a critical by pokes as well as swings, but that's some ancient memory telling me that. Also, again judging from the published run, I can skip one Medical Herb if I also skip the Critical Sword. When grabbing the Critical Sword, I'm grabbing two items in the process, not one. Though, I do need to avoid a bit of lava, I don't see any other use for the herb. Geez, JPN Soul Blader has really fast text. I'll have to analyze the other changes, but I'll be looking at the possibility of a version change. The first boss is actually easier, weaker attacks allow me to rush down the middle right away, if I'm seeing this correctly. USA texts take way too long, so I'm considering a version change for sake of entertainment, as we get back into action sooner (I can always subtitle quick summaries of the official translation for Soul Blazer).
Editor, Experienced Forum User, Published Author, Skilled player (1175)
Joined: 9/27/2008
Posts: 1085
http://tasvideos.org/userfiles/info/11397947979589904 Running through the game using lsnes. I think I'm beating the published run. Except I forgot to pack a few extra GEMs. I need to go back and pick up some more. http://tasvideos.org/userfiles/info/11398015642958275 Such as, say... In this run. Except do something like this in the second world. Then again, there is a need to do a bunch of this in the first world to speed things up. I need more GEMs. I might also get two extra EXP to level up earlier, as I go out of my way for extra damage at one point. The RNG is interesting. It uses 16 bytes, starting from address 7E0302. Whenever the game needs a new RNG, * Add byte 16 to byte 15. Add byte 15 to byte 14. Add byte 14 to byte 13. And so on. Include the carry of the last addition to the next. * Add the number 1 to byte 16 * The RNG value used is in byte 1 But that's not the only way the game modifies the RNG. Whenever there is a screen transition, it also copies a two-byte value in address 7E0312 into 7E0302. Address 7E0312 is a frame-based timer that resets to -1 after this transfer. The old value in bytes 1 and 2 are thrown away for this transfer. Effectively, this means that, when entering a screen, bytes 1 and 2 only care how long it took for you to get there since the last transition, and bytes 3 to 16 are only affected by how many RNG rolls have been made. I can tweak bytes 1 and 2 by throwing away a few frames, and I can tweak the rest by interacting with enemies, either by (not) killing them, or dancing around the ones that use the RNG. Oh, and stepping on a cleared lair that releases something back at the town takes two screen transitions. Meaning it doesn't matter how long it took you to clear it, as far as the RNG is concerned, just how long it takes for you to clear the texts. As for GEMs dropping, the game takes the RNG (byte 1) and modulo 100 for a range of 0 to 99. It is looking for low numbers to determine how big your GEM is. With the way modulo works, this does give a slight edge in getting larger GEMs, exactly 1.171875% for every intended 1%. The thresholds depend on what world you're in. The first world has a pittance for a drop rate, and the last one doesn't drop small ones. Grabbing my GameFAQs post:
Lrge: Mid :Smll - (avg.) Place
 1% :  3% : 96% - (1.21) Grass Valley
 3% :  5% : 92% - (1.47) GreenWood
 5% :  7% : 88% - (1.73) St. Elles
 7% :  9% : 84% - (1.99) The Mountain of Souls
 9% : 11% : 80% - (2.25) Dr. Leo's Laboratory
11% : 13% : 76% - (2.51) Magridd Castle
51% : 49% :  0% - (7.55) World of Evil
Wielding the Lucky Blade doubles these thresholds, regardless of whether you actually kill them with the sword itself. By some amusing... Luck... I was able to spot and collect two large GEMs in the first room. I may redo large parts of this TAS in order to optimize the value of this gain, and to see if I can't pull out even more GEMs. I'll share more thoughts later.
Editor, Experienced Forum User, Published Author, Skilled player (1175)
Joined: 9/27/2008
Posts: 1085
http://tasvideos.org/userfiles/info/8936028298677215 I said I would provide a few test movies somewhere, regardless of whether I'm co-authoring. This is one. Some bits of menu stuff to think about. You go through more digits going up from 0 to 6 than you do going down. Though you do need to move the cursor more, the wait between digits is very significant. Also, sometimes you can push B while also pressing in some direction. Might save a frame on occasion. As for the game itself, lag happens likely because the game is trying to advance time. If you keep at least one button held at all times, no time will advance, and thus less lag. I have a button held during the fade-in so that the game doesn't have it take a long time due to also advancing time with the fade-in. Note that while I'm moving the cursor around in the menu, I'm also fast-panning the camera. The menu cursor will move for a few frames at a time, which won't be interrupted by the fast-pan. Then the rail building. There's a reason why down-building is a different pattern from up-building. When moving the cursor, the game thinks it's immediately in a new position when going upward, but takes a few frames when going downward. Therefore, a different pattern is used when I'm trying to move the cursor while building. I suspect the down-build can be done slightly faster, however. I just wanted a quick test out. Nevermind that the rerecords I put into it is over half of the submission's count.