Player (206)
Joined: 5/29/2004
Posts: 5712
Oh, hm... Maybe just make a Youtube playlist with all the discoveries?
put yourself in my rocketpack if that poochie is one outrageous dude
Experienced player (545)
Joined: 5/12/2005
Posts: 707
I am not sure either what you're going to do but if you have a glitch related questions about Rockman games you don't know or know how to do them and so on. You can contact me throught IRC if you want to and I can try to answer for your questions. I noticed that you're focused much more in Rockman 2 stuff right now and that's the game I understand the most and know it's basics really well.
Joined: 1/27/2008
Posts: 236
Location: Somewhere
Not really, I've just been playing around with it for the past while. :P. As Bag said, I'm making a compilation of ladder zips from Rockman, and am going to realese it over Youtube, if someone could help me with subtitles (for explanations) that would be helpful :P.
See Youtube page (GIRfanaticTAS) for all runs and stuff.
Editor, Active player (297)
Joined: 3/8/2004
Posts: 7469
Location: Arzareth
As this idea had nothing to do with making TASing easier / more interesting in general, and was rather a game specific idea, I moved it to the NES games forum.
Post subject: Mega Man no-lag weapon-switch speedrun!
Experienced player (634)
Joined: 8/28/2008
Posts: 443
Is it possible? I got this idea from playing on the Mega Man Anniversary Collection! I was wondering if it was possible to do a speedrun with no lag and switching weapons with the press of a button! Sounds like a neat idea! :)
Post subject: Re: Mega Man no-lag weapon-switch speedrun!
Editor, Active player (297)
Joined: 3/8/2004
Posts: 7469
Location: Arzareth
mega_man_3 wrote:
Is it possible? I got this idea from playing on the Mega Man Anniversary Collection! I was wondering if it was possible to do a speedrun with no lag and switching weapons with the press of a button! Sounds like a neat idea! :)
Please elaborate. Are you talking about NES Mega Man? What do you mean "switching weapons with the press of a button"? Also, what does "no lag" have to do with anything? Isn't this quite an arbitrary goal?
Post subject: Re: Mega Man no-lag weapon-switch speedrun!
Player (224)
Joined: 10/17/2005
Posts: 399
Bisqwit wrote:
mega_man_3 wrote:
Is it possible? I got this idea from playing on the Mega Man Anniversary Collection! I was wondering if it was possible to do a speedrun with no lag and switching weapons with the press of a button! Sounds like a neat idea! :)
Please elaborate. Are you talking about NES Mega Man? What do you mean "switching weapons with the press of a button"? Also, what does "no lag" have to do with anything? Isn't this quite an arbitrary goal?
The Anniversary Collection lets you change weapons without entering the weapon select menu with L and R buttons (like in MMX games). No, it's not for NES. GC, PSX etc. I think.
<adelikat> I've been quoted with worse
Player (121)
Joined: 2/11/2007
Posts: 1522
I was working on a Lua script to enable weapon switching with the Select key but got stuck on updating the PPU so the palette didn't get screwed up.
I make a comic with no image files and you should read it. While there is a lower class, I am in it, and while there is a criminal element I am of it, and while there is a soul in prison, I am not free. -Eugene Debs
Editor, Active player (297)
Joined: 3/8/2004
Posts: 7469
Location: Arzareth
alden wrote:
I was working on a Lua script to enable weapon switching with the Select key but got stuck on updating the PPU so the palette didn't get screwed up.
Well, I can help in that regard. (For Mega Man / Rockman.) Data at $D485 = MegamanPalette. It's a table of eight two-byte records. Each describing the two color values in Megaman's suit, for the following weapons, respectively: P,C,I,B,F,E,G,M Function at $C72A = PaletteSetupForSprites. Before calling, poke the first color value to $3E1 and the second color value to $3E2. The function will reprogram the palette to indicate correct Megaman's colors. If you cannot call this function, you can emulate its function by doing as follows: - Poke the address of SpritePalettes ($3E0), 16-bit, into $38..$39 and $3A..$3B. - Poke the value 0x18 into the address $34, and the value 0x01 into the address $37. After doing this, the next NMI will update the PPU properly to indicate the new colour values.
Post subject: Re: Mega Man no-lag weapon-switch speedrun!
Player (206)
Joined: 5/29/2004
Posts: 5712
Bablo wrote:
The Anniversary Collection lets you change weapons without entering the weapon select menu with L and R buttons (like in MMX games). No, it's not for NES. GC, PSX etc. I think.
I already pointed this out in a couple of other topics, but the first 6 games in the Anniversary Collection were taken from the Rockman Complete Works games which were released individually in Japan and had even more special features. Since they're for the Playstation 1, we should be able to make tool-assisted runs of them now, although someone still needs to check if they're emulated well. I'm also not sure if RockMan 1 will really benefit from the fast switching. All the same glitches still work, so there would still be lots of Magnet Beam abuse. And the first 3 games don't seem to have a button to let you switch to your platform items the way 4, 5, and 6 do with L2 and R2; you still need to open the menu for your Magnet Beam, Item-#s, and Rush adaptors, and the menu is replaced with a new kind that slides across the screen in the Navi Mode for 1, 2, and 3. Not to mention Energy Tanks would have to be selected on the menu in 2-6 too--I remember the latest Mega Man 5 run used a Mystery Tank. As an aside, I just discovered that Rockman Complete Works 3 fixed the Rush selection glitch, so I may never know if the game would have let me save with a Rush adaptor from a boss I didn't beat.
put yourself in my rocketpack if that poochie is one outrageous dude
Post subject: Re: Mega Man no-lag weapon-switch speedrun!
Experienced player (634)
Joined: 8/28/2008
Posts: 443
Bablo wrote:
Bisqwit wrote:
mega_man_3 wrote:
Is it possible? I got this idea from playing on the Mega Man Anniversary Collection! I was wondering if it was possible to do a speedrun with no lag and switching weapons with the press of a button! Sounds like a neat idea! :)
Please elaborate. Are you talking about NES Mega Man? What do you mean "switching weapons with the press of a button"? Also, what does "no lag" have to do with anything? Isn't this quite an arbitrary goal?
The Anniversary Collection lets you change weapons without entering the weapon select menu with L and R buttons (like in MMX games).
Yes, this is exactly what I was talking about! And yes, it was also NES Mega Man I was talking about.
Player (121)
Joined: 2/11/2007
Posts: 1522
Bisqwit wrote:
clever things
Thank you Mr. Bisqwit. I have a more-working script now, but it doesn't seem to update the palette for the weapons; that is, the weapons that Rockman shoots. For example, the magnet beam is a bunch of Y's, and the other weapons are similar garbage. In addition to the poking you suggested, I was taking the advice of http://www.datacrystal.org/wiki/Mega_Man:RAM_map and setting $5F to various values to select a weapon. Is there perhaps something different I should try?
I make a comic with no image files and you should read it. While there is a lower class, I am in it, and while there is a criminal element I am of it, and while there is a soul in prison, I am not free. -Eugene Debs
Joined: 1/25/2009
Posts: 29
Location: Finland
i can help you to do the video etc :) Editing with sony vegas 9 pro etc.. allso can some1 tell me how to do the ladder zipping thingy in the 1st lvl of rockman :)
still a nooby in speedrunning
Emulator Coder, Former player
Joined: 10/2/2005
Posts: 563
Location: Toronto, Ontario
MexicanHat wrote:
i can help you to do the video etc :) Editing with sony vegas 9 pro etc.. allso can some1 tell me how to do the ladder zipping thingy in the 1st lvl of rockman :)
This page is probably what you're looking for.
Active player (276)
Joined: 4/20/2004
Posts: 219
Location: Japan,Tokyo
Mr. cstrakm and I discovered Water Pipe Glitch. (in IceManStage) This movie is surprising for you. :P http://www.yuko2ch.net/rockman/rockman_wind_glitch.avi The Megaman's speed goes up certainly. http://www.yuko2ch.net/rockman/rockman_hand.avi Pattern that number of hands increases. And, I studied into the cause.
----------------------
LoadEnemies
LoadEnemyNumber

0001D99A: BD 52 A4	lda EnemyDataPointers+0,x
 X=#$02,$A454=#$8D,A=#$8D

  Bank5($A454=#$8D) and 6($A454=#$29) changed by one frame in this part.
  The value of $A454=#$29 is read usually. 
  But,the data of Bank5($A454=#$8D) is uncommonly read (by lag?). 

0001D99D: 65 06		adc CurrentRoomPointer
 A=A+$06=99 $06=$0C
0001D99F: 85 06		sta CurrentRoomPointer
 $06=99 $07=85

  Then,CurrentRoomPointer=($06)=#$8599!
-----------------------
LoadEnemies_Forward
0001D8F0: B1 06		lda (CurrentRoomPointer),y ;load enemy number
 $06=#$8599 Y=#$03 $859C=#$2F
  There is #$2F in $859C in the icemen stage. 

0001D8F5: 20 AD D9	jsr SpawnObject
 A=#$2F
-----------------------
SpawnObject
0001D9AD: 85 02		sta $02 
 $02=#$2F
0001D9E5: A5 02		lda $02  ;object type
0001D9E7: 9D E0 06  sta ObjectType,x
 06F1=#$2F
 The enemy of Object2F was generated. 
-----------------------
DoEnemyAI
$AA29> BD E006: LDA ObjectType,X
 AI of Object2F is executed. 
-----------------------
AI_Object2F
$BA79> A9 30:   LDA #$30
 The water current is generated by AI of Object2F. 
-----------------------
Perhaps, the result of the investigation shows the following. 1:Because the water current's having occurred was good that the condition of the icemen stage. 2:Perhaps, this investigation means there is a possibility that the unknown enemy can call even in other stages. (If the boss or the block or the earthquake can be called, it might be interesting :P ) 3:The unknown enemy who can call by the stage is decided. 4:List of Enemy's AI http://www.yuko2ch.net/rockman/EnemyAIaddr.txt 5:The part that can use this glitch where the Bank changes frequently. The Bank change's occurring is defeating the enemy ,shot of arms , is dropping the item.
Senior Moderator
Joined: 8/4/2005
Posts: 5777
Location: Away
So you're suggesting the current TAS can be improved using this new glitch?
Warp wrote:
Edit: I think I understand now: It's my avatar, isn't it? It makes me look angry.
ventuz
He/Him
Player (126)
Joined: 10/4/2004
Posts: 940
finalfighter wrote:
2:Perhaps, this investigation means there is a possibility that the unknown enemy can call even in other stages. (If the boss or the block or the earthquake can be called, it might be interesting :P )
I remember long ago, Mega Man 5 (for gameboy), one of game genie code I created from entering randomly made ANY enemy killed explode like stage boss, mega man suddenly leave stage and get powerup. (too bad I lost that code, I'd sooo look into the cause) I wonder if it will work the same if boss is called in Mega Man 1?
Active player (276)
Joined: 4/20/2004
Posts: 219
Location: Japan,Tokyo
http://dehacked.2y.net/microstorage.php/info/960032354/rockman_water_pipe_glitch.fcm This technique should be able to be optimized a little more. :) I think that there is a possibility to be able to save more than the current TAS.
Experienced player (766)
Joined: 12/20/2009
Posts: 120
Awesome, FinalFighter. Your discoverings are incredible and useful :D I hope to watch new MM1-run.
Active player (276)
Joined: 4/20/2004
Posts: 219
Location: Japan,Tokyo
I ascertained the cause of reading the incorrect data. The cause of the water current is NMI! In a word, this glitch is named "DelayWaterCurrent".
Default:
$42=01,05,06
d4A8 NMI is caused
d56e A=$42=01,05,06
d571 STA $C001,5,6  ChangeBank1,5,6
d89d STA $C006 A454=29 ChangeBank6
d8A0 $42=06
d99A A454=29 read data of Bank6

DelayWaterCurrent:
$42=05
d89d STA $C006 A454=29 ChangeBank6
d4A8 NMI is caused
d56e A=$42=05
d571 STA $C005 A454=8D ChangeBank5
d8A0 $42=06
d99A A454=8D read data of Bank5
1:In a word, enemy's kind is not related. 2:And, this technique is possible any stage. 3:However, the enemy called by the stage is decided.
Default:
0001D4A8: //NMI
0001D89B: A9 06		lda #$06
0001D89D: 8D 06 C0	sta $C006 //ChangeBank06
0001D8A0: 85 42     sta $42       //$42=06

DelayWaterCurrent:
$42=05
0001D89B: A9 06		lda #$06
0001D89D: 8D 06 C0	sta $C006 //ChangeBank06
0001D4A8: //NMI
    D56E: A5 42     lda $42         //$42=05
    D571: 9D 00 C0	sta $C000,x //ChangeBank(#$C000+$42)=ChangeBank05
0001D8A0: 85 42     sta $42       //$42=06
The range is just behind D89D. NMI sets Bank6 when $42 writes with D8A0 and it changes. This bug had occurred at the chance momentarily to save the bank number.
Active player (276)
Joined: 4/20/2004
Posts: 219
Location: Japan,Tokyo
I create the LuaScript for DelayWaterCurrent.(FCEUX2.1.2over is needed) http://www.yuko2ch.net/rockman/rm1delay.zip *rm1delay.lua Glitch succeeds when Next is "1". When NEXT doesn't approach "1" even if the Thunder Beam is shot, it might be impossible in that place.
X:X(XSpeed)
Y:Y(YSpeed)
PRE:Number of instructions of ChangeBank6 from NMI End(frame)
NEXT:Number of instructions of NMI Start from ChangeBank6(frame)
ENMYBNK:When the glitch succeeds, the data of this Bank number is read. 
CRNTBNK:It is a value of the Bank when the frame begins. 
D582:NMI End
 |(PRE instructions)
D89B:ChangeBank6
 |(NEXT instructions)
D4A8:NMI Start
The method of the adjustment is same as the delay scroll of RockMan2. http://www.yuko2ch.net/rockman/howtodelayscroll_eng.htm *rm1delaytest.lua The value of the register is rewritten by this lua script and the problem is emulated. This script teaches what glitches occurs when the amount of instructions is completely adjusted. If "delay (NEXT:number of instructions)" suffices, the example of the future below is possible. Because I have not investigated the amount of delay yet, I have not understood be possible in image's place yet :P However,such an example may occur because of this technique! The glitch occurs when you push the select button twice. Already know,The water current occurs in the IceMan stage. There is a part where the number of enemies increases. There is a place where Elec Man shows up. software reset The revival point has changed when the screen shifts due to the bug and RockMan dies. Intense graphic bug RockMan transform to other characters, and to be able to pass wall. *Investigation in the future In a word, it is necessary to look for the useful example by "rm1delaytest.lua" in all stages where the number of instructions(delay) is enough The result might change even if face turns left or right. This will become a very serious investigation. :( It is likely to succeed also in the place where software resets is generated when timing is moved. A variegated bug occurs because this bug reads the data of a wrong Bank. If the example found by you and the place where the number of instructions suffices, the glitch will occur if we adjust instructions. Perhaps, for TAS, transformation, water current, and the revival point change might be important.
Active player (276)
Joined: 4/20/2004
Posts: 219
Location: Japan,Tokyo
http://dehacked.2y.net/microstorage.php/info/1254725616/rockman_water_pipe_glitch_a.fm2 http://dehacked.2y.net/microstorage.php/info/1530230399/rockman_water_pipe_glitch_b.fm2 I was able to put out the water current quickly in IceMan stage. The saving of time might be certain. To be requested from us is to find the act of incorporation of a good magnet beam. :P
Experienced player (545)
Joined: 5/12/2005
Posts: 707
finalfighter wrote:
http://dehacked.2y.net/microstorage.php/info/1254725616/rockman_water_pipe_glitch_a.fm2 http://dehacked.2y.net/microstorage.php/info/1530230399/rockman_water_pipe_glitch_b.fm2 I was able to put out the water current quickly in IceMan stage. The saving of time might be certain. To be requested from us is to find the act of incorporation of a good magnet beam. :P
Mighty as always! Also FinalFighter is asking for some help because when glitch is done Rockman's speed is increases a lot (just like in the Wily stage where water runs) and Magnet Beaming needs really good timing and testing with careful decisions. It seems what FinalFighter have investigated about this glitch, this glitch is most usable in Iceman (in the beginning), Bombman (Up+Down enemy bombing area, if adjustement goes well) stages so far. Glitch also work in the first Wily stage but place for glitching is not good enough. It seem to work in the beginning of Wily 2 stage as well but more investigation is needed.
Active player (276)
Joined: 4/20/2004
Posts: 219
Location: Japan,Tokyo
http://dehacked.2y.net/microstorage.php/info/312398654/rockman-increse_enemy.fm2 There is the fm2 where the number of enemies increases in the BombManStage. :P I proved this technique operated also in other stages. The analysis of the technique was correct. And, the water current occurs uncommonly in this place. (Though I cannot reproduce yet)
Active player (276)
Joined: 4/20/2004
Posts: 219
Location: Japan,Tokyo
http://www.yuko2ch.net/rockman/rockman-11.avi I found that I can use "DelayTransform" in this place. It is certain that I can save time in this place. Perhaps,the probability might be the lowest in a current delay technique. :(
LoadEnemies
  1:mistake in the BankNumber by NMI. 
  2:The object of #$4C is loaded. 
DoEnemyAI
  3:jsr (#$D006)
  The address that doesn't jump is called usually , big mistake occurs. 
  Because the value of the object becomes #$00-#$3B usually , the processing of AAD1-BD98 is called usually. 
  The address not intended as AI of # $4C is called this time.

  4:MegaMan comes to be buried on the floor and through the wall :P
DoEnemyAI 
$AA29> BD E006: LDA ObjectType,X 
  A=#$4C 
$AA2D> A8: TAY 
  Y=#$$4C 
$AA2E> B9 3BAA: LDA EnemyAIaddr+0,Y 
  A=AAD1+4C=#$06 
$AA31> 85 04: STA $04 
  $04=#$06 
$AA33> B9 3CAA: LDA EnemyAIaddr+1,Y 
  A=AAD2+4C=#$D0 
$AA36> 85 05: STA $05 
  $05=#$D0 
$AA38> 6C 0400: JMP ($0004) 
  JMP (D006) 
Address list that enemy calls http://www.yuko2ch.net/rockman/JumpAddressList.txt