1 2
11 12
Player (66)
Joined: 4/21/2011
Posts: 232
DarkKobold wrote:
Get cards in Balamb
Could you get Quistis from the groupie on the top floor right after that? Would that be faster than walking to the cafeteria?
Skilled player (1652)
Joined: 11/15/2004
Posts: 2202
Location: Killjoy
nanogyth wrote:
DarkKobold wrote:
Get cards in Balamb
Could you get Quistis from the groupie on the top floor right after that? Would that be faster than walking to the cafeteria?
You probably need Ifrit's and Anaconduar's card to beat them - especially the Trepes. So, I should babble about the improvement plan. You NEED to get Card, Imag RF, and Boost before talking on Elvoret. (Need the 18 AP towards Card Mod and STR-J) This requires 40 AP. The breakdown of forced stuff is: * 20 - Ifrit * 6 - 2 Fishies * 6 - 6 G-Soldiers * 4 - Anaconduar This leaves 4 AP to get. In the previous TAS, I kill the 2 vampire bats, and 2 bombs. This costs 1 victory fanfare and 2 limit breaks, however it lets me skip getting the cards in Balamb. My new plan is to kill the two vampire bats, and then kill the g-soldier on the bridge, as well as waste steps to get a 2nd encounter right before Elvorett. This would cost ~8 seconds to get the cards, 1 victory fanfare, ~5 step counters, plus the time to get them. (If you skip this, you are forced into a G-soldier battle that you can't run from after BGH-2052). So the question is, is Cards + 5 steps < 2 limit breaks? The other hidden issue here would be the number of step counters remaining right before you get Enc-None. If it is 5 or less without this strategy, you'd get another encounter, negating the gains. However, I'm skipping invincible moon this time, plus skipping parts in the prison, so it'd be near impossible to pre-calculate. Anyway, suggestions appreciated!
Sage advice from a friend of Jim: So put your tinfoil hat back in the closet, open your eyes to the truth, and realize that the government is in fact causing austismal cancer with it's 9/11 fluoride vaccinations of your water supply.
Editor, Emulator Coder, Site Developer
Joined: 5/11/2011
Posts: 1108
Location: Murka
DarkKobold wrote:
about the sound - FF8 runs at 59.997 FPS, not 60. Every sound file, whether 2 minutes or 4 hours, comes out at a matching length. I've encoded it enough to know. This makes it look like sound desyncs, but it doesn't.
The video files that come out of the emulator are labeled as 60.000fps. If that's not what they should be, then that's an emulator problem. FFIX comes out similarly, making me think it's possibly a global emulator failing (and not game-specific).
Dada wrote:
There's one last problem to be solved for the FF8 encode: I have no idea what to do with the disc switch fades: http://wedemandhtml.com/tmp/195_ff8dk-640x480.avi If anybody could shed some light on this, that would be great. It almost seems like some kind of strobe effect. I've seen the same effect when playing FF8 on a real PSX hooked up to a PC monitor. I've talked about it with several people on the ffmpeg irc channel but nobody knew what it is. Maybe some kind of frequency problem/difference between PC/tv. edit: this is what happens when I decimate by 3 and then blend deinterlace... looks better but it's not a full fade to black. http://www.youtube.com/watch?v=YJiF0RWZZE4 edit: choosing a different offset for the decimation seems to fix the problem:
My best guess of what's going on is that PSXjin is outputting garbage fields (since it is definitely outputting twice as much information as it should be in interlace mode). That in itself only fixes the opening though, not any of the disk changes. Not sure exactly what's going on there; I just selected whatever cadence appeared to work. So basically, the clip is field separated, half of the fields are dropped (hopefully the fake ones), that's weaved back to 30p, and then up-converted to 60p. Note that the use of "60fps" here is only to get a 1->2 going; actual conversion to 59.997fps is done elsewhere. Here's what I used. Note that this is operating on all 640x480 segments concatenated together to a single file (should be exactly 2396 frames)
Language: avisynth

function SelectBots (clip c) { return c.AssumeFrameBased.AssumeBFF.SeparateFields.SelectEven } function SelectTops (clip c) { return c.AssumeFrameBased.AssumeTFF.SeparateFields.SelectEven } FFVideoSource ("all_640_480.mkv") AssumeFPS (60, 1) c0 = last #opening zone tops = c0.SelectEven ().SelectTops bots = c0.SelectOdd ().SelectBots Interleave (tops, bots).AssumeFieldBased.AssumeTFF.Weave c1 = last #disk 2 tops = c0.SelectEvery(6, 1, 2, 3).SelectTops bots = c0.SelectEvery(6, 0, 4, 5).SelectBots.Trim (1, 0) Interleave (tops, bots).AssumeFieldBased.AssumeTFF.Weave c2 = last #disk 3 tops = c0.SelectEvery(6, 3, 4, 5).SelectTops bots = c0.SelectEvery(6, 0, 1, 2).SelectBots Interleave (tops, bots).AssumeFieldBased.AssumeTFF.Weave c3 = last #disk 4 tops = c0.SelectEvery(6, 1, 2, 3).SelectTops.Trim (2, 0) bots = c0.SelectEvery(6, 0, 4, 5).SelectBots Interleave (tops, bots).AssumeFieldBased.AssumeTFF.Weave c4 = last #stitch c1.Trim (0, 237) + c2.Trim (238, 552) + c3.Trim (553, 913) + c4.Trim (914, 0) ChangeFPS (60, 1) ConvertToRGB24 ()
Skilled player (1652)
Joined: 11/15/2004
Posts: 2202
Location: Killjoy
natt wrote:
DarkKobold wrote:
about the sound - FF8 runs at 59.997 FPS, not 60. Every sound file, whether 2 minutes or 4 hours, comes out at a matching length. I've encoded it enough to know. This makes it look like sound desyncs, but it doesn't.
The video files that come out of the emulator are labeled as 60.000fps. If that's not what they should be, then that's an emulator problem. FFIX comes out similarly, making me think it's possibly a global emulator failing (and not game-specific).
I thought Dada figured out that at certain times (loading at the start, disc swap), the sound buffer stops, and PSXjin never creates empty audio for it, thus leading to a weird ratio that will still have sync issues.
Sage advice from a friend of Jim: So put your tinfoil hat back in the closet, open your eyes to the truth, and realize that the government is in fact causing austismal cancer with it's 9/11 fluoride vaccinations of your water supply.
Player (66)
Joined: 4/21/2011
Posts: 232
I did this: 200_disc1_end.avs
Language: avisynth

avisource("177_disc1-640x480.avi") #357 reverse crop(31,38,580,406) separatefields selectevery(12, 0,5, 2,7, 10,9) weave interleave(last,last) reverse deleteframe(358) #0 2 4 6 8 X #B;.;.;;B;.;. #;.;.B;.;.;;B
And using something like this might be helpful for getting the different frame sizes to play nice together.
Skilled player (1652)
Joined: 11/15/2004
Posts: 2202
Location: Killjoy
Dialog Skip: Download DialogSkip.lua
Language: lua

-- press the X button at the first possible -- frame after each box of dialogue pReady = { 0x83014, 0x83018, 0x83054, 0x830CC, 0x8308C, 0x83090 } btPressed = { 0, 0, 0, 0, 0, 0 } while (true) do for i = 1,# btPressed do ready = memory.readbyte(pReady[i]) if ready == 1 then if btPressed[i] == 0 or btPressed[i] == 10 then joypad.set(1,{["x"]=true}) emu.frameadvance() joypad.set(1,{["x"]=true}) btPressed[i] = 1 end elseif ready == 10 then if btPressed[i] == 0 or btPressed[i] == 1 then joypad.set(1,{["x"]=true}) emu.frameadvance() joypad.set(1,{["x"]=true}) btPressed[i] = 10 end else btPressed[i] = 0 end -- gui.text(40,10+(i*8),btPressed[i] .. " " .. ready) end -- mem = 0x83088 -- for i=0,32 do -- gui.text(40,10+(i*8),mem+(i*4) .. " " .. memory.readbyte(mem+(i*4))) -- end emu.frameadvance() end
Step Script




StepVals = {7, 182, 240, 31, 85, 91, 55, 227, 174, 79, 178, 94, 153, 246, 119, 203, 96, 143, 67, 62, 167, 76, 45, 136, 199, 104, 215, 209, 194, 242, 193, 221, 170, 147, 22, 247, 38, 
4, 54, 161, 70, 78, 86, 190, 108, 110, 128, 213, 181, 142, 164, 158, 231, 202, 206, 33, 255, 15, 212, 140, 230, 211, 152, 71, 244, 13, 21, 237, 196, 228, 53, 120, 186, 218, 39, 97, 
171, 185, 195, 125, 133, 252, 149, 107, 48, 173, 134, 0, 141, 205, 126, 159, 229, 239, 219, 89, 235, 5, 20, 201, 36, 44, 160, 60, 68, 105, 64, 113, 100, 58, 116, 124, 132, 19, 148, 
156, 150, 172, 180, 188, 3, 222, 84, 220, 197, 216, 12, 183, 37, 11, 1, 28, 35, 43, 51, 59, 151, 27, 98, 47, 176, 224, 115, 204, 2, 74, 254, 155, 163, 109, 25, 56, 117, 189, 102, 135, 
63, 175, 243, 251, 131, 10, 18, 26, 34, 83, 144, 207, 122, 139, 82, 90, 73, 106, 114, 40, 88, 138, 191, 14, 6, 162, 253, 250, 65, 101, 210, 77, 226, 92, 29, 69, 30, 9, 17, 179, 95, 41, 
121, 57, 46, 42, 81, 217, 93, 166, 234, 49, 129, 137, 16, 103, 245, 169, 66, 130, 112, 157, 146, 87, 225, 61, 241, 249, 238, 8, 145, 24, 32, 177, 165, 187, 198, 72, 80, 154, 214, 127, 
123, 233, 117, 223, 50, 111, 52, 168, 208, 184, 99, 200, 192, 236, 75, 232, 23, 248};

Offsync = 0x8005F150;
StepLoc = 0x0005F151;
StepLoc2 = 0x0005F164;
DangerLoc = 0x0005F0FE;
AngeloLoc = 0x00077E9A;

function GetNextEncounter()
	Danger = memory.readbyte(DangerLoc);
	Step = memory.readbyte(StepLoc);
	WalkStep = 0;	
	while (Danger < StepVals[math.mod(Step,256)+1]) do
		WalkStep = WalkStep+1;
		Step = Step + 1;
		Danger = Danger + 2;
	end;	
	Danger = memory.readbyte(DangerLoc);
	Step = memory.readbyte(StepLoc);
	RunStep = 0;	
	while (Danger < StepVals[math.mod(Step,256)+1]) do
		RunStep = RunStep+1;
		Step = Step + 1;
		Danger = Danger + 5;
	end;
	gui.text(120,1,string.format("Walk: %d Run: %d",WalkStep,RunStep));
	gui.text(120,11,string.format("Step: %.2f Danger: %d", memory.readbyte(StepLoc) + memory.readword(StepLoc2)/256, memory.readbyte(DangerLoc)));
	gui.text(120,21,string.format("Angelo Steps: %d", memory.readbyte(AngeloLoc)));
end;


while true do   
   emu.frameadvance();  	
   GetNextEncounter();
 
    
end;
	

Sage advice from a friend of Jim: So put your tinfoil hat back in the closet, open your eyes to the truth, and realize that the government is in fact causing austismal cancer with it's 9/11 fluoride vaccinations of your water supply.
Joined: 7/9/2011
Posts: 20
From SDA, via FFgamer86:
Thought I should post my findings on the "Double-GF Glitch" and maybe some others can mess around with it some more to see if it would be useful anywhere. My findings have been unable to yield any positive results though. To perform this glitch you must be at the beginning of disc 3 about to head into the 4th Laguna Dream(The Ruby Dragon Fight) and the GF(s) you want to duplicate must be equipped to Squall. In the menu where you assign which character will be assigned to Kiros and Ward, before you leave the Menu, do a Junction Exchange with Squall and a character not participating in the Laguna Dream. When you get into the Laguna Dream, make sure to re-junction the GFs because Laguna and co. will not be junctioned at all for the Ruby Dragon Fight. When you finish the dream, The characters assigned to Laguna, Ward and Kiros will have the GF(s) junctioned to them during the dream, and the character you swapped with before the dream will also have the GF(s) that you swapped with him before you entered the dream. Why this works? - The Game Auto-Unjunctions your characters prior to the dream so that this trick could be used. When your inside the Laguna dream the game is only checking if Laguna, Kiros, or Ward are junctioned before it allows you to junction a GF to your character. So the game leaves Squall junction, allowing you to give his junctions to someone outside the dream before you go in. Research Needed? This trick would be very useful in a speedrun if you could manage to do it in the 5th and Final Laguna Dream because then you could have the GFs duplicated for the rest of the game. Unfortunately, all the methods I have tried have been unable to succeed and I think it has to do with the game wiping your characters GFs multiple times. If anyone can find a way to get it through the 5th Laguna Dream, I'd be extremely happy. Stuff Possible once you Double-GF. - You can summon him on both characters same time(His health will be @ the amount of the 2nd summoning) I.E. If he is killed on the 1st summon and the 2nd summon goes off, he will have the life of the 2nd summon attempt. - He does not get Double XP or Double AP - You can Have both characters junctioned with him to utilize the same ability. IE- Pandemona's Innitiative
Pokota
He/Him
Joined: 2/5/2014
Posts: 779
So I'm playing FF8 casually in BizHawk and I have to ask, Is it just my computer being stupid, or is Analog control sideways during menus? If I don't bind both the d-pad and the analog stick to the analog stick, then analog up corresponds to moving right in the menu.
Adventures in Lua When did I get a vest?
Player (160)
Joined: 5/20/2010
Posts: 295
For 100%, after you get a Chicobo Card, you don't need to have a talk with the boy. Exit Chocobo Sanctuary and reenter, then you can ride the Chocobo if you check the Chocobo, though I've not checked which is faster.
1 2
11 12