Posts for Lucky_Bacon

Experienced Forum User, Published Author, Player (36)
Joined: 5/15/2010
Posts: 15
Our current project WILL save a couple of minutes from my run thanks to a new skip discovered, but i will not be able to work on it for a little more while. Its a shame it had to be such a bad timing with me requesting to pause the judging, right before i had to be even busier than i thought. The run can be accepted if you wish. I apologize for the very long absence, i just had too much on my mind.
Experienced Forum User, Published Author, Player (36)
Joined: 5/15/2010
Posts: 15
I'm sorry if i am not saying much, but i barely have free time on the weekdays to do stuff.
Experienced Forum User, Published Author, Player (36)
Joined: 5/15/2010
Posts: 15
The "Powerup" address is what controls the Enemy ID. 00-03 Will be a level's normal enemy. 04-09: Minibosses in order. Changing that value will change their behaviour. 0A-11: Bosses in order. Changing that value will change their behaviour. However, Bosses will always spawn with ID 0F. When they are ID 0F, their behaviour will change depending on what level you are in ($EE) The rest are just glitchy bosses with odd animations, attack patterns, hitboxes. EDIT: Current time, up to the end of level 6. Note that i changed "miniboss end (99)" to "miniboss end (Camera unlocked)", since the level timer does not always immediately get set to 99 on miniboss end. In level 6, it took quite a number a frames to show 99, way after the camera started to move. S: 23 1st level start (colors ready): 183 1st miniboss start (boss shown): 1315 1st miniboss end (Camera unlocked): 1440 1st boss start (boss shown): 2728 1st boss end (lag frames): 2854 2nd level start (colors ready): 3004 2nd miniboss start (boss shown): 4707 2nd miniboss end (Camera unlocked): 4825 4th boss start (boss shown): 6107 --This was the true time i was supposed to put in my last post. 6007 was when the boss was activated, but not shown. My bad! 4th boss end (lag frames): 6344 5th level start (colors ready): 6526 5th boss start (boss shown): 10255 5th boss end (lag frames): 10474 6th level start (colors ready): 10657 6th miniboss #1 start (boss shown): 13268 6th miniboss #1 end (Camera unlocked): 13572 Other 2 minibosses were skipped!! 6th boss start (boss shown): 14484 6th boss end (lag frames): 14743 Level 6 is so cramped, most of the time, its impossible to get past those "camera lag" moments. Some of the lag even prevented the camera to move for up to 5 frames! 7th level start (colors ready): 14826[/b]
Experienced Forum User, Published Author, Player (36)
Joined: 5/15/2010
Posts: 15
So i found this snippet of code, that seems to handle what happens with which powerups.
Language: lua

00:AF91:A6 8A LDX $008A = #$05 ;--PowerUp Number 00:AF93:CA DEX 00:AF94:F6 EA INC $EA,X @ $00EE = #$00
Since each minibosses seem to be able to spawn a powerup in incrementing value, that means, if we had enough of them, we could have another go at incrementing levels... in a way. Power up 16 will increment $FF, which is the address used if you want to continue after a game over. But we don't have that many minibosses. But the adresses normally written by the powerups ($EA - $EC) don't actually seem to have any impact on the game.
Experienced Forum User, Published Author, Player (36)
Joined: 5/15/2010
Posts: 15
I don't seem to get any differences on their animation, or timer, if i bring their health to 0, or do the other stuff. Their health won't go into the negatives either. So, something that disappointed me yesterday is that, even in the US version, i cannot attack the bosses' weak point, because that will prevent me from going to the next stage when doing the death glitch. The timer at 0084 gets reset at some point, but nothing happens. In the japanese version, it resets, and shows japanese text at the top. So attacking their weakpoints makes you lose more time in both versions, if someone does a no-glitch run.
Experienced Forum User, Published Author, Player (36)
Joined: 5/15/2010
Posts: 15
I'll keep updating this post with the new times i currently have, with the spreadsheet you uploaded.
  • 1st miniboss end (99): 1441. Enemies spawning close enough to the miniboss made it possible to glitch the boss, and skip it, saving frames.
  • 1st boss end (lag frames): 2854. If enemies at the end had their positions switched, i would've been able to save even more frames. Both of them need to be exploding(doing the noises), but really only one, (the correct one) need to be already exploded.
Link to video This is not part of the TAS. Enemy positions were modified for demonstration. If "That number thingy" stays at a high value, then the boss might glitch or spawn weirdly. 007A(thingy) and 0084(Splode timer) seem to handle both enemies, at least, and seems to always be trial-and-error with them, but so far, they haven't disappointed me. I should probably rename "thingy" to something like "sprites X position".
  • Level 2 start (colors ready): Old: 3036. New: 3004
  • S2 miniboss end (99): Old: 4887. New: 4826
  • S2 (or S4) boss spawn: Old: 6109. New: 6007
  • S2 (or S4) end: Old: 6429. New: 6344 (17 frame loss because bad Boss RNG. This was the best out of many attempts.)
I'll take a break here.
Experienced Forum User, Published Author, Player (36)
Joined: 5/15/2010
Posts: 15
Neat! I also made myself a simple script that just shows me some values, and made it yell at me in red if screen lag is detected. It's poorly written, but i had no intention of releasing the script anyway. just the addresses. The warning stays on screen for 2 seconds, with the timer being visible. The timer is red for the first 30 frames, and then becomes yellow. Rewinding clears the warning. This is what i have at the moment: -Camera position, except mine uses 0020 instead of 0026. -0084: A timer that is used for one of the two sprites exploding, when to resume a game when a miniboss is defeated, or when go to the next level after defeating a boss. -007A: Might be an enemy's x position on screen? This is what i use to skip bosses. When i punch enemies, and stay right next to them, it seems to randomly change between two values. When this happens, i just activate the boss when it shows one of two values, and if it is correct, the bosses glitch out. If not, then i just wait until the other value shows up to activate the bosses. Sometimes, it might not change at all. So punching the enemies at a different position or timing might change this. Update from last TAS: Seems like i only need one enemy's explosion timer to be above 80, but i still need to punch the other one. I can just do it much later. That saves some time, as long as the correct enemy gets in my face first to receive a free punch in the face. -0385: This needs more investigation, but it seems to be some kind of timer that has to do with enemy spawning? It decrements by one or two depending on how many enemies are on screen, and then stops at a certain low value?
Experienced Forum User, Published Author, Player (36)
Joined: 5/15/2010
Posts: 15
Yeah, i decided to do it again. I'll be complaining from time to time about the game's mechanic in the Discord server
Experienced Forum User, Published Author, Player (36)
Joined: 5/15/2010
Posts: 15
Samsara wrote:
Going through both this run and the published run side by side, I noticed that some sections of movement are executed slower in this run. I put together a comparison spreadsheet showing both runs, along with some notes/advice about the specific sections. Would you mind looking into/explaining some of these?
-This looks like bad enemy RNG, could be manipulable/avoidable? -Sprite overflow glitch saves time here, but I feel like the enemy spawns could be manipulated for a faster result? -Well I mean good job skipping two stages for sure, but I've got the same suggestion with the previous sprite overflow usage. I've tried many things to get the enemies to spawn how i want to so i wouldn't need to go left. I am not sure how enemy spawning works. At the moment, all i have that could help with that is address $0385, and that if i bring the screen too far in S2 miniboss, they wont spawn at all, unless i go back to the staircase. The limit seems to be about in the middle of the second window. I can still defenitely see improvement to be done there, if they would stop throwing things making them fall behind a lot. That address might not even be of use, and i might just be getting the wrong idea from it. S6 Postboss: Check the published run here and look at how it climbs the staircase at the end. You seem to lose time on every staircase like that in this stage. I definitely know what i did wrong with those staircases and how to fix that. I did not realize my mistake until pointed out. So does pausing change the spawn patterns? You gain a good number of frames from not having to deal with as many enemies. Definitely look more into this. Pausing only delays their spawning for a little. Doing it multiple times prevents them from spawning. This was pretty much done if i was sure there was no way to dodge their attacks, knocking me back. I'll still look into it. S6 Miniboss 3: What a weird section in both runs. I'm not sure what to make of it, honestly. Published is definitely faster, but also does things that look like they lose time... That boss seems to spawn quickly, and since the screen transition puts us too far ahead, getting knocked back left, or hitting a wall like they did would help. Something i should've done. S6 Boss: Bad boss RNG for once. I think this is the only boss loss (lmao) in the run? How hard is it to manipulate bosses? It is not hard. I kind of just learned that a little too late. Most bosses could have a few frames saved as well. At this point, i might as well just restart. hahaha
Experienced Forum User, Published Author, Player (36)
Joined: 5/15/2010
Posts: 15
Seeing how fast level 7 ended after defeating the boss, i thought i did something "special", and was hoping to see if this could be done in other levels. Instead, i see that it was just coded that way, only for that level? Don't know if this snippet helps, but thats what i understood just from these lines. I'm still a beginner at this, and debugging stuff.
B898:  A9 80     LDA #$80      ;default value to set $84 when bosses' death animation is finished
B89A:  85 84     STA $84       ;boss death frame counter, incrementing
B89C:  A5 FE     LDA $FE       ;not sure
B89E:  D0 10     BNE $B8B0     
B8A0:  A5 EE     LDA $EE       ;current level
B8A2:  29 07     AND #$07      
B8A4:  C9 03     CMP #$03      
B8A6:  90 04     BCC $B8AC     
B8A8:  C9 06     CMP #$06      ;level 7
B8AA:  D0 04     BNE $B8B0     
B8AC:  A9 C0     LDA #$C0      ;Set this value to $84
B8AE:  85 84     STA $84       ;boss death frame counter, incrementing
Not sure why they even did this. That's unfortunate.
Experienced Forum User, Published Author, Player (36)
Joined: 5/15/2010
Posts: 15
MESHUGGAH: I will need to look into that. These boosts should be useful in levels with transitions, like level 2, first floor of level 6, 7, and tight spaces from breakable blocks. Other than that, if it's just rooms that go straight to a boss, or gates in level 5, i would actually lose about 3 frames, due to the camera not scrolling during the knockback. Only the camera position matters in those cases. CoolHandMike: "You are already dead." *Bunnyhops away*
Experienced Forum User, Published Author, Player (36)
Joined: 5/15/2010
Posts: 15
Alyosha wrote:
Cool find, what made you think to try that?
These finds were mostly found accidentally way back when i had no internet. (The one you had happen in level 6's boss, but differently, in level 2, and scroll lock bypass) I was around 9. I was just playing the game, and when i got to level 2's miniboss, i saw it spawned in the middle of the screen, instead of one of the sides. I found that wierd, but didn't care much about it, until i saw that i killed it in one hit. I didn't know much about programming back then, so i just shrugged it off. About 1 second after the fight was over, i started hearing some weird faint sound effect, and then an explosion occured, and that item spawned, which i missed the first time. Some time later, it happened again. This was around the time i started becoming a glitch hunter, and also having way too much fun with randomized Game Genie codes. This time, i remembered to collect the item, and when i did, i fell through the floor, and i was surprised to see i was in level 3. Not much i could do though, since i didn't have any computer. And even if i did, i wouldn't even know where to start. Many years later after i started playing with emulators, i started playing with tools like FCEUX's HEX memory editor, and then later on, simple ASM programming, and then, the debugger. So i started having fun breaking games with glitches, and eventually went back to this game. I was able to reliably bug out bosses like that, exploring the glitchy out-of-bounds area by bypassing the scroll-lock. And this is how i accidentally discovered skipping bosses. I tried doing that on the first boss, not miniboss, but i before spawning the boss, i just punched both enemies at the same time, for fun. And then the boss just spawned in the middle of the screen, where one of the enemies were, and appeared glitchy: It wasnt moving, and then the game just moved on to the next level. I was amazed. The reason i wait a little before spawning the boss in the movie is that if i do it while the enemies are about to explode, it will take much longer to do the transition. The value at 0x0084 increases every frame, and does the transition once it reaches FF. When an enemy finally explodes, it changes from 3B to 80, which speeds things up a lot. The number at 0x0089 seems to change randomly between two numbers, and the boss will only glitch out if that address is a certain number. I don't know very much how this works because it seems to differ every time. But if it doesn't work with one number, then just wait until it does change, if it ever does, then spawn the boss. Level 2 miniboss spawning two of these level-skip items took me by surprise when i did that glitch on it. Anyway, i plan on making a compilation of quick undiscovered(?) glitches from random videogames in one video eventually, and that game will be in there, including all the glitches in aware about. If you're curious about the scroll-lock thing, all you have to do, is reach a place where the camera stops. If you went fast enough, you might notice a few pixels showing either the next area, or a glitchy mess. Once that's done, you want to make the camera move the other way ONE pixel, or just enough to not completely hide those extra pixels, then just go back. The camera no longer has any boundaries, unless you go back to the intended location. Here's a clip of something i discovered when trying that in random places way back then: Link to video EDIT: Source video was accidentally deleted. Fixed.
Post subject: Glitched TAS of milky way wishes
Experienced Forum User, Published Author, Player (36)
Joined: 5/15/2010
Posts: 15
Glitched TAS of Milky Way Wishes. Yeah, with snes9x 1.51 v6... Me no have the smv anymore by the way, its gone, it does not exist anymore... http://www.youtube.com/watch?v=zaWcepObEnw This took over an 30 minutes to do. The glitch rarely happens in snes9x. The first time was by accident, i wanted to play normally and finish the game at 100%, and it just happened to glitch in Spring Breeze, then i reloaded a state, tryied to make it glitch again for several minutes, did not appen again. So yeah, Thats how rare it is...
Experienced Forum User, Published Author, Player (36)
Joined: 5/15/2010
Posts: 15
So i was told about the code that resets the game that cuts cutscenes, and i just tried it out, and it does cut the cutscenes... anyway, the thing is, when i do it, it does not bring me directly to the "start" screen, it restarts on the NINTENDO screen... Anyway, now that i know the code, shall i redo the run?
Experienced Forum User, Published Author, Player (36)
Joined: 5/15/2010
Posts: 15
Im very sorry about the late reply, but i forgot to say that im only there in weekends. other than that, i cannot reply to your questions. Anyway, heres the settings file: http://www.mediafire.com/download.php?mcnmuyhjum3 I used: -DeSmuME.exe; -Version is DeSmuME 0.9.5 x86; -Size is 975KB; I dont know if the microphone shortcut might be affected, but i used it with the space button.