Sorry, the first strategy skips Mia, the second is if you want to grab that water djinn. You should retreat glitch straight into the aerie.
Doing both is probably possible (to grab the water djinn and not Mia) with a lot of backtracking/multiple retreat glitches.
I made a Golden Sun 2 TAS (draft) 5 years ago, but I lost it because the computer broke, but yesterday I was able to 'recover' it using a program called testdisk. The vbm didn't work though because it's corrupted or something but maybe some of you know if it can be fixed, or if it's at least possible to know how long it was (would be interesting to know the framecount, but i think it was over a Million, so maybe 5 hours or so... june12edit: actually i found out that it was 6:30, and 6:01 ingame time). Because it's an insanely long TAS, it's 2.6mb, so I couldn't upload it to dehacked's microstorage: http://www.mediafire.com/?ndqm2nn5n4z (edit: the movie link in the post below is probably better)
If you view the file in a text editor, there's some strange text like: "š?ÀØýûñ&cK
GòÀÊ&m¸¢n6g that zip believes the
file to be text or binary, respectively; but if the file
is encrypted, zipinfo notes this fact by capitalizing the
character (`T' or `B'). The second character may also
take on four values, depending on whether etc."
I don't know if that's in all vbm files or just in this because it's been deleted and thus messed up somehow. There's also a bunch of stuff like " B B B R R R R R R R ’ ’ € € € € ‚ ‚ ‚ ‚ ‚ "
I found a better version of this movie file. It's playable, but it desyncs. Maybe some of you can get it to sync, or maybe it can be fixed by hex editing.
Link: http://www.mediafire.com/?zmn4lqwmnyz
I used the svn build called "v22 svn153", you can find it on this page.
I used turbo and paused sometime to to a backup savestate, but I didn't have to use them.
still doesn't work. i've tried several older VBAs too, and another rom. could it be that you have some special settings on your emulator that makes it sync? it desyncs at the beginning after deleting felix name. it inputs B too many times.
yeah, other movies work fine. i tried castlevania circle of the moon and advance wars black hole rising.
while trying to edit the beginning with the TAS movie editor i noticed it says that system type is "game boy", but when i try to play the movie in VBA, "game boy advance" is selected by default and it can't be changed. maybe this could cause the desync, but it's weird that it doesn't desync for you.
by removing 49 frames from the beginning i got it to sync quite long now... until the next reset (75000 frames or so), so it's probably the starting/restarting of the emulator that causes the desync. isn't there any easier way to fix this than to edit the movie?
Same here, using the default settings of the svn 153. In fact, the movie wasn't even able to delete Felix's name. Weird.
Thus, I removed the 49th first frames, like you did (I actually removed frames in which you had already begin to enter inputs, bizarre).
But it kept desynching around frame 21,600, during the very first battle.
Indeed, in this fight, you cure yourself with an herb during the first round, and then you attack the ennemy only once, thus you can't finish the battle. This herb at the first round seems unexpected, so I guess this isn't the pattern you actually chose and the movie just desynched on the first round. Am I wrong ?
I'm actually quite interested in seing a Golden Sun run (1 or 2 whatever). Is there anybody still working on the route for GS1 ?
I made some some savestate here and there, must of them are from the second half of the movie thought. Maybe that can help.
==> http://omploader.org/vNHJ4Zg/GS2-savestate.zip
I'll try an encode but this is going to take some time.
Thanks BadPotato !
Hopefully, the 9th savestate begins at a really early frame (1500 or so). I was finally able to watch the first battle ;) but the movie desynchs at the first reset (around frame 76,000), same as nfq. I think there are a few frames too many just after this reset (I will test this if time gives me time).
It would be great if could provide a savestate that begins at around frame 80,000 (as all the other savestates are from the second half).
I'm very interested in running Golden Sun 1 after I finish my current projects. Currently I have found a sequence break to the end of most dungeons I have encountered. It does not seem possible to sequence break the forest before Tret Tree, but there is probably a small sequence break up Tret Tree.
When I intend to TAS this, I will do a preliminary (suboptimal) run to test things like how many sacred feathers/ how much healing will be necessary. The only fact that needs to be strictly considered is the RNG incrementation.
By the way, walking straight in two directions covers exactly the same distance as walking diagonally. The only consideration that needs made is how to best approach corners to make sure not to lose ~2 frames.
I can only say I will probably start within the next year. If people want to cooperate and get started now, I'll discuss all of my speculations with you. A lot of what I've done has been directly addressed in this thread.
i edited the movie so that it syncs for 300000 frames or so: http://www.mediafire.com/?hhcnkjijzmj
the reset (third one) after airs rock wind dungeon or whatever probably causes the desync (fuck, why did i have to reset so many times :P). if the movie works for you, feel free to continue editing it if you have time. i probably won't have so much time to do it for a while now.
Got it to sync for 970000 frames, which is probably as far as it goes. It desyncs at the lucky wheels, after it had synced for 160000 frames since the last reset, so the desync is probably not caused by the reset, but by those lucky wheels. Probably because of deleting frames from the movie, it changed the lucky wheels, although it's a little strange that it didn't cause any other luck factors to mess up.
http://www.mediafire.com/?5imjrqxy2my
When restarting the game, i noticed that it took a little more or less frames each time, so that probably has something to do with the desyncing. I was able to fix the reset-desyncs pretty fast when i noticed that pattern.
Btw, thanks for the save states bad potato, i can watch the rest of the movie with them, because there aren't any more resets after the lucky wheels :) But still, I'm very confused why the movie only works for badpotato. It doesn't make any sense.
Hm, I shared my setting file and as I said, I didn't do anything special, I guess the problem isn't on particularly your side. Thought keep in mind, that your movie is one of the longuest TAS for vba and all these resets should probably push the emulator near the edge of his limits.
If you got some time, you can try this on a virtual machine and hopefully get it working.
Anyway, here more savestate and an encode(996mo), the sound from the last cutscene should cut off for several second, sorry about that.
Hi everybody ;)
I'm currently working on a run of Golden Sun: The lost Age, even though I didn't know that another run was submitted.
Due to optimization, I was able to save more than 700 frames until now over the submitted run:
http://dehacked.2y.net/microstorage.php/info/447115103/Golden%20Sun%202-WIP1.vbm
I actually won't tas much further than daila for the moment, because I will first do some research on the retreat glitch and stuff like that until I continue.
One question: Would the retreat glitch be a different category than any% without the glitch? Or would a glitched run obsolete a non-glitched one?
Usually runs that make use of glitches that cut out a large amount of the game do not obsolete runs that do not make use of those glitches. This isn't a hard-and-fast rule, mind.
Pyrel - an open-source rewrite of the Angband roguelike game in Python.
New WIP:
http://dehacked.2y.net/microstorage.php/info/260606823/Golden%20Sun%202.vbm
The 'Return to last Sanctum'-trick can be performed, when controlling Felix the very first time with the result, that you will be in the sactum of daila, skipping a LOT of dialogue.
With this trick I was able to save a bunch of frames over the submitted run, which adds up to 5585 - yup, 5585 - frames saved until leaving daila. :D
Thanks for these cool WIPs, NinG!
I'd like to point out that some people will also start to work on GS1 in the future. A lot of post concerning the GS1 TAS have also been post in this thread, which thus shouldn't be used to discuss the two games at the same time.
Currently there are 5 exiting threads concerning the GS series:
Golden Sun (this thread)
Golden Sun: The Lost AgeGolden Sun TASGolden SunNEED HELP avoiding random battles in Golden Sun (forget this one)
I suggest that this thread should be used to talk about GS1, and the Golden Sun: The Lost Age thread should be used to talk about GS2.
I got this run to work, I'm not entirely sure if the rom version is correct, but it may be right.
Can you explain why you hit random buttons sometimes in between text boxes, or is there no reason?
12625: Just to point out something before it comes up. Look at the dialog just after frame 12625. When you interrupt the pauses in speech ("Umm") by pressing A, if you have to close the dialog the frame after, you can't hit A two frames in a row. If you did want to close a very short dialog you should hit B to break the pause and then A to close it.
14105: You lost a frame here. It is one frame slower to press Right, A then it is to hit B.
I figured that sanctum warping was faster, and you confirmed it. =p
I tied you getting out of Dalia, so your walking is close to optimal. My finding with Golden Sun 1 was that it is equally fast to walk straight (up) then (left) as it is to walk diagonal (up and left). Using this information I speculate it is possible to save 1 frame around half the corners if you are tedious. I don't think it is worth spending your time to do this right now though.
Alhafra or Mikasalla seems to be the first place you can buy Sacred Feathers. I'm not sure how sacred feathers affect the step value to the next battle exactly, but I did describe the step value earlier in this thread. Maybe 'Avoid' is all you need. I never looked into this thoroughly.
It may be that you should have wasted a turn in the last battle in your WIP in order to manipulate the step value for the next random encounter (outside Dalia) to be higher.
Renaming Jenna would surely have saved some frames by now. I do not know how much Garet, Ivan, and Mia come up in discussion.
Without renaming Jenna I would've only been able to beat your current WIP by just a few frames, so it is currently good work. I will be paying close attention to your choices with the RNG, and I look forward to seeing what sort of 'Retreat Glitch' opportunities you find. I intend to give advice as much as I can if you continue this run. I will try to post a video detailing all possible ways of retreat glitching during the weekend, because there are 3 uses I have found, and I only have one on video.
I found a few useful bits in the GameFAQs guide by Iron Knuckle. I'm thinking you were supposed to rename all characters if you were to be optimal.
I hacked together a text skipping code at one point. I am not positive it skips text optimally currently. It is also very inefficient currently. Ideally it would savestate every 20 frames or so and every time it clears a box or something.
local UserInputAD = 0x020330f0
local YesNoAD = 0x020330fc
local NoMovingAD = 0x02000060
local tempstate = {}
local value
local Break
Break = 0
value = 2
tempstate[value] = savestate.create()
while true do
if memory.readbyte(NoMovingAD) == 16 and Break == 0 then
savestate.save(tempstate[value])
end
while memory.readbyte(NoMovingAD) == 16 and Break == 0 do
savestate.load(tempstate[value])
vba.frameadvance()
vba.frameadvance() -- We need to respond two frames ahead of time.
if memory.readbyte(UserInputAD) ~= 0 then
if memory.readbyte(UserInputAD) == 150 then --End of phrase
savestate.load(tempstate[value])
joypad.set(1,{["A"]=true})
vba.frameadvance()
vba.frameadvance()
savestate.save(tempstate[value])
else
savestate.load(tempstate[value]) -- Mid phrase
joypad.set(1,{["B"]=true})
vba.frameadvance()
savestate.save(tempstate[value])
end
elseif memory.readbyte(YesNoAD) == 1 then
savestate.load(tempstate[value])
vba.frameadvance()
vba.frameadvance()
vba.frameadvance()
vba.frameadvance()
vba.frameadvance() -- Five frames before action is allowed.
savestate.save(tempstate[value])
vba.pause()
while memory.readbyte(YesNoAD) == 1 do
vba.frameadvance()
end
savestate.save(tempstate[value])
else
if memory.readbyte(NoMovingAD) ~= 16 then
savestate.load(tempstate[value])
savestate.save(tempstate[value])
Break = 3 -- To account for 2 frame barrier
vba.pause()
else
savestate.load(tempstate[value])
vba.frameadvance()
savestate.save(tempstate[value])
end
end
end
if Break > 3 then -- To account for 2 frame barrier
Break = Break - 1
end
vba.frameadvance()
end
Hey,
First of all, thanks for the reply and offering your help.
Yeah I sometimes press buttons between text boxes for no reasons :P
I actually figured that I lost a frame on the No/Yes-choice at 14105 but I saw it so late that I didn't want to redo all.
I don't think renaming Jenna or any of the others save any frames, because once the text speed is set to 'fast', one word per frame appears, and it doesn't matter if this word is 'Jenna' or just 'J', because it only needs one frame anyway.
Oh, and on the way to Kandorean Temple there only is one random battle, which are two giant bats if I get into the fight on the road (I actually can't escape from that fight on the first turn) or one wild wolf, if I get into the fight in the forest (I can escape here). It could be that I don't even lose frames running through the forest since it's pretty much on the way anyway.
But I found something interesting: If you let Echo explain how a djinn works, it changes the RNG obviously, because you get different fights after a different number of steps. So maybe there are some actions that change the RNG, other than fights and walking through doors multiple times.
Another thing I found out some days ago: walking instead of running can extend the time until you get into a fight, because (like you said before in this thread) walking adds a different value to the 'step counter' than running, but the value is too little compared to the speed of walking.
That means, if you get into a random fight frames before you change the area, you can walk a little distance instead of run it, which will let you enter the next area, before you encounter the random fight.
Edit: Changing areas at different frames also seems to change the number of steps until a random fight, but not the enemys. I don't know if it changes behaviour in fights, I didn't test it yet, but I don't think it does.
That means, that we will maybe have to waste some frames in order to have the lowest number of random fights.