Posts for Lil_Gecko

1 2
14 15 16
20 21
Lil_Gecko
He/Him
Experienced Forum User, Published Author, Player (94)
Joined: 4/7/2011
Posts: 520
Spikestuff wrote:
Gecko how much faster are you in level... compared to as I assume total time?
3 frames in the intro, 120 frames in the first level. http://dehacked.2y.net/microstorage.php/info/1990053058/Crash%20Bandicoot%20-%20The%20Huge%20Adventure.vbm
Lil_Gecko
He/Him
Experienced Forum User, Published Author, Player (94)
Joined: 4/7/2011
Posts: 520
Yep, I tried the first level with the latest VBA and improved your run by 123 frames. Quote from earlier in the thread :
On the ground the optimal movement is Slide-Spin but you have to spin right before your speed goes back to 2. It goes 5-4-4-4-4-3-3-3-3-3, you have to spin on the last 3. Then the next Slide-Spin must be done when your speed hit 1 again. The reason is that a Slide-Spin performed right after a Spin is a different version of it where the Spinning animation isn't displayed allowing for a faster standing up. The Slide-Spin where the animation isn't displayed is the faster way of moving. About the jumps. When you jump you must spin in mid-air in sort a way the Spinning end on the frame you hit the ground. That way you hit the ground with a speed of 1 and can slide right away. Otherwise, your speed is 0 and you lose a few frames.
Lil_Gecko
He/Him
Experienced Forum User, Published Author, Player (94)
Joined: 4/7/2011
Posts: 520
112. And I missed a lot that I knew of.
Lil_Gecko
He/Him
Experienced Forum User, Published Author, Player (94)
Joined: 4/7/2011
Posts: 520
Unfortunately the random number pointer (from 62e10 to 62e18) moves in a non-linear pattern making it impossible to determine in advance what numbers will be used and when. Plus when the ennemy readies a move the pointer at 62e18 makes a bump skipping some numbers from the pointer table and I don't see a way to know in advance when this bump is gonna occur. I guess the only way to do it is to use the script and advance 200 frames to know when Critical will happen.
Lil_Gecko
He/Him
Experienced Forum User, Published Author, Player (94)
Joined: 4/7/2011
Posts: 520
Finished revisiting Disc 1. 2017 frames saved.
Lil_Gecko
He/Him
Experienced Forum User, Published Author, Player (94)
Joined: 4/7/2011
Posts: 520
I have never played this game so I can't comment the route or anything, but this WIP was very entertaining and the level of trajectories' optimisation seems really high! Keep up the good work!
Lil_Gecko
He/Him
Experienced Forum User, Published Author, Player (94)
Joined: 4/7/2011
Posts: 520
I unfortunately don't know anything about ASM, but if you find anything interesting let me know.
Post subject: Re: RNG dialogue
Lil_Gecko
He/Him
Experienced Forum User, Published Author, Player (94)
Joined: 4/7/2011
Posts: 520
antd wrote:
Lil_Gecko wrote:
Edit : Found out that the RNG sometimes also play a part on how fast a character starts talking. So I've been able to shave some frames on the dialog part. Plus better RNG for BW2. 1691 frames ahead after that fight.
Interesting. Have you found out any more details on this? I may investigate for FFVII...
There's not much more to say. Delaying the entrance of a dialog part to have a different RNG may result in a faster dialog in the next sequence. Here is an exemple : http://www.youtube.com/watch?v=jBHz1DlQTeg
Lil_Gecko
He/Him
Experienced Forum User, Published Author, Player (94)
Joined: 4/7/2011
Posts: 520
Didn't understand either. What are you supposed to do ?
Lil_Gecko
He/Him
Experienced Forum User, Published Author, Player (94)
Joined: 4/7/2011
Posts: 520
So, I found a couple of improvements at the beginning of the game. During the fight against Steiner and the Bomb, killing Zidane after the Bomb grows instead of before saved 109 frames. Letting Baku attack twice to build up more Trance loses 260 frames but will save a bunch against the Plant Spiders. Stealing the Silk Shirt from Blank and equip Zidane with it to reduce thunder damage by 50% avoid the use of a potion during the Plant Spiders fight. Plus I managed to save a turn. Around 1400 frames saved. Better RNG for the Black Waltz 1/Sealion fight. Grand total of 1423 frames saved after the BW1/Sealion fight over the published run. If you've spotted any improvement somewhere or have better strategy in mind, now would be a good time to say it :) Edit : Found out that the RNG sometimes also play a part on how fast a character starts talking. So I've been able to shave some frames on the dialog part. Plus better RNG for BW2. 1691 frames ahead after that fight.
Lil_Gecko
He/Him
Experienced Forum User, Published Author, Player (94)
Joined: 4/7/2011
Posts: 520
Definite yes vote! I didn't see the ending coming!
Lil_Gecko
He/Him
Experienced Forum User, Published Author, Player (94)
Joined: 4/7/2011
Posts: 520
Yes lua can do that just fine
while true do
joypad.set(1,{["x"]=true});
for i=0,3 do
emu.frameadvance();
end;
end;
that's for autofiring X but you can change it with the following circle, triangle, square, start, select, up, down, left, right, l1, l2, r1 or r2.
Lil_Gecko
He/Him
Experienced Forum User, Published Author, Player (94)
Joined: 4/7/2011
Posts: 520
Indeed very nice work ! Keep up the good work.
Lil_Gecko
He/Him
Experienced Forum User, Published Author, Player (94)
Joined: 4/7/2011
Posts: 520
Strange. The cheat editor works for me with CTRL+C. But you have to adapt the gameshark code. 50 means it's a multi-lines code. 0009 is the number of lines. 90 is the difference between 2 lines. 0000 is the difference of value between 2 lines. Finally 30 means it's a one byte line. 08B2A3 is the adress of the first line. 0063 is the value of the first line. (in hexa so 0x0063 = 99) That means you must enter 8B2A3 with value 99 8B333 with value 99 8B3C3 with value 99 and so on by adding 00090 to the adress. Or this lua script should work too :
while true do
for i=0,8 do
memory.writebyte(0x8b2a3+i*0x00090,99);
end;
emu.frameadvance();
end;
Lil_Gecko
He/Him
Experienced Forum User, Published Author, Player (94)
Joined: 4/7/2011
Posts: 520
I'd consider it more of a trick than a glitch tbh. I don't see any reason to ban it from a glitchless run.
Post subject: Re: Yuffie Warp Glitch
Lil_Gecko
He/Him
Experienced Forum User, Published Author, Player (94)
Joined: 4/7/2011
Posts: 520
antd wrote:
Thanks Lil_Gecko, that script is great! I should be continuing work with the glitched run at some point; almost done with disc one.
You're welcome. I am also glad to see you're still working on it. Keep up the great work.
Lil_Gecko
He/Him
Experienced Forum User, Published Author, Player (94)
Joined: 4/7/2011
Posts: 520
And another YES vote !
Lil_Gecko
He/Him
Experienced Forum User, Published Author, Player (94)
Joined: 4/7/2011
Posts: 520
Really nice ! As said already keep up the good work !
Lil_Gecko
He/Him
Experienced Forum User, Published Author, Player (94)
Joined: 4/7/2011
Posts: 520
while true do
crit1=math.floor((memory.readbyte(0xf83f5)+memory.readbyte(0xf83e9)-memory.readbyte(0xF8589))/4);
crit2=math.floor((memory.readbyte(0xf845d)+memory.readbyte(0xf8451)-memory.readbyte(0xF8589))/4);
crit3=math.floor((memory.readbyte(0xf84c5)+memory.readbyte(0xf84b9)-memory.readbyte(0xF8589))/4);
rnd1 = memory.readbyte(0x83084+memory.readbyte(0x62e10+(memory.readbyte(0x62e18)+1)%8));
rnd2 = memory.readbyte(0x83084+memory.readbyte(0x62e10+(memory.readbyte(0x62e18)+2)%8));
rnd2=rnd2*256;
rnd0=rnd1+rnd2;
crit_rng=math.floor((rnd0*99)/65535)+1;
if crit1>=crit_rng then
gui.text(0,50,"Critical Hit from Character 1!");
else
gui.text(0,50,"");
end;
if crit2>=crit_rng then
gui.text(0,60,"Critical Hit from Character 2!");
else
gui.text(0,60,"");
end; 
if crit3>=crit_rng then
gui.text(0,70,"Critical Hit from Character 3!");
else
gui.text(0,70,"");
end;
gui.text(0,30,"Ennemy 1 crit% = "..crit1.." "..crit2.." "..crit3);
gui.text(0,40,"crit_rng = "..crit_rng);
emu.frameadvance();
end;
This script predicts when the RNG is in the right spot not when to attack. This should be done either 8 or 4 frames earlier. EDIT : Updated the script so it shows the Critical for each of the 3 characters. Also it only uses the ennemy 1 level to calculate the crit %. If there's more ennemies, you need to change the ennemy level address.
Lil_Gecko
He/Him
Experienced Forum User, Published Author, Player (94)
Joined: 4/7/2011
Posts: 520
I would love to help but this assembler thing is a mistery to me. What does that do exactly :
load byte from 80083084(offset2) = rnd1 
load byte from (83084 + offset2) ? also this part :
rnd1 OR rnd2 (combine rnd1 and rnd2) = rnd0
What's the operation between rnd1 and rnd2 ?
Lil_Gecko
He/Him
Experienced Forum User, Published Author, Player (94)
Joined: 4/7/2011
Posts: 520
Dooty wrote:
Lua Functions wrote:
table joypad.get(int port) Returns a table of buttons which have been pressed. Does not read movie input.
So, the Lua script, although a good idea, is useless on PCSX-rr to show what buttons have been pressed.
That's not really a problem because the Dpad and start,select are registered at 0x82295 and the other buttons at 0x82294 so by reading those addresses you can know which button is pressed but it's a pain to register all the values.
Lil_Gecko
He/Him
Experienced Forum User, Published Author, Player (94)
Joined: 4/7/2011
Posts: 520
Yes vote of course ! The ideas were amazing !
Lil_Gecko
He/Him
Experienced Forum User, Published Author, Player (94)
Joined: 4/7/2011
Posts: 520
Finally finished watching this. Easy yes vote !
Lil_Gecko
He/Him
Experienced Forum User, Published Author, Player (94)
Joined: 4/7/2011
Posts: 520
Nice WIP. I will definitely follow your progress. Keep up the good work.
Lil_Gecko
He/Him
Experienced Forum User, Published Author, Player (94)
Joined: 4/7/2011
Posts: 520
Ah makes sense then, thanks :)
1 2
14 15 16
20 21