Guild icon
Direct Messages
Kosmic
After 2025-12-03 00:00
Avatar
threecreepio 2025-12-03 22:01
i think i have the record for most disappointing failure in SMB glitch-hunting for now.
Avatar
Oh????
22:49
I am sooo curious
Avatar
threecreepio 2025-12-04 06:39
https://www.youtube.com/watch?v=2V0HguV68o8 eh someone may have a bigger disappointment, but, it's so close. if i could just turn those koops, or if they spawned a tiny bit later.. and then there's a spawn like 1 tile to the right at the ending, if that was a little to the left, it would have worked. but just perfectly lines up to where it doesn't. :) i was looking at it quite a while back and it just felt so close that like, there's gotta be a way to do it. but still haven't figured it out. (edited)
Avatar
Oh no wayyyy
10:22
I had never considered this
10:22
ACE in -1?
10:23
We can't take damage to turn the koopas around?
10:26
Even if you need fireballs for payload they should still persist after taking damage... So this seems doable?
10:27
I think you just need 2 of them right, so take damage on the first one and you're good?
10:27
At worst you turn the goomba around to get all 3 of them
10:27
Please let me know if there's some reason this doesn't work, otherwise I feel like we have ACE in smb1 😄
10:28
And ofc it's the fds version because ACE is ALWAYS on the fds version of every game somehow rofl
10:28
Man I was exploring past the flagpole just a month ago or so and saw all this goofy stuff but it didn't cross my mind
10:29
This is actually so insane. I've been trying to figure out a video topic to do and this could be it...
Avatar
threecreepio 2025-12-04 10:41
yeah the problem is they don't turn around when you're under water. :)
10:44
but yeah if we could find that last little thing to just get it triggered.. it would be harder to do something useful with ACE in SMB1, but it's be great
Avatar
they what haha
10:52
why... i guess so cheep cheeps dont turn around?
10:53
is this a tas, could you send me the file
Avatar
Avatar
threecreepio
but yeah if we could find that last little thing to just get it triggered.. it would be harder to do something useful with ACE in SMB1, but it's be great
is it because there's not such a particular place in memory to jump to the ending sequence? Im not sure how total control gets set up in 2j but if it's possible in smb1 landscape then you can do whatever, drop mario right on the axe. Or at worst load into 8-4? Would still be faster
Avatar
Avatar
Kosmic
is this a tas, could you send me the file
threecreepio 2025-12-04 10:56
Sure, 1 min. On the phone.
10:56
and just to check, the glitched entity doesn't get cleared by killing bowser? The star flag doesnt so im assuming this doesnt
11:02
why do you kill the red koopa on the stairs btw
11:03
oh the cheep despawns firebar so bowser can spawn
11:05
man it's almost perfect if there was 1 more enemy before the long firebar also
Avatar
threecreepio 2025-12-04 11:07
the long firebar is unfortunately not useful, its not the real long firebar so it doesnt take an extra slot. :)
11:08
i think. let me check
11:09
yeah. its not taking an extra slot. and that byte between the enemies and the flags isnt cleared when bowser dies so the glitch keeps working. i have forced it just by making the koops turn around by editing memory, and that did trigger the ACE. but its not quite as easy to use as 2j
Avatar
Avatar
Kosmic
This is actually so insane. I've been trying to figure out a video topic to do and this could be it...
threecreepio 2025-12-04 11:11
yeah your youtube post popped up in my feed so i figured, i havent made any progress on this thing in months (not that ive been actively looking) so i might as well mention it.. maybe some way to find something i've missed.
Avatar
do you know that glitch where enemies will start moonwalking after you take damage?
Avatar
threecreepio 2025-12-04 11:12
the firebar thing?
Avatar
yeah you usually see it in like 7-4 of 2j
11:12
does the firebar have to be rotating or do you know how that works
Avatar
threecreepio 2025-12-04 11:13
i dont think so, i think it should just turn whatever enemy is in the first slot
11:15
oh and also if it didnt take that long to get over there, we could have slowed down to despawn a few of the like.. flagpoles and things later on in the level and spawned another bowser which would trigger the glitch. but, too far away
Avatar
wow it's close in so many ways
11:19
after the bowser kill, did you purposefully get the retainer object in slot 3 or was that just from trying to go as fast as possible
Avatar
threecreepio 2025-12-04 11:22
i did some adjustments to make sure bowser was spawning in the later slots, since thats where you want him for the controller inputs. i dont remember if you want the head in slot 4 or 5.
Avatar
uhhhh
Avatar
threecreepio 2025-12-04 11:23
but for now i just want the thing to actually hit ACE, so it doesnt matter that much which slot its in until proven that it actually can happen
Avatar
uhhhhh
11:23
i think i found something
Avatar
threecreepio 2025-12-04 11:23
oh?
11:24
i was far right on the screen so i was to the right of him when he landed
Avatar
threecreepio 2025-12-04 11:24
huh
Avatar
so he walked to the right
Avatar
threecreepio 2025-12-04 11:24
yeah, which koop is that?
Avatar
ok so that was an earlier one, but now a later one also did it
Avatar
threecreepio 2025-12-04 11:24
that is why i wanted to be far right on the screen (or well, one of the reasons) but could only get the buzzy and one underground koop to actually turn
11:25
but yeah if we could get one turned out to bump into another enemy (assuming they at least left that intact in underwater..) then that could do it
Avatar
the one right before the goomba before the 3 koopas turned around so he could turn the goomba arounda nd the goomba can turn the 3 around
11:25
but also
11:25
do you know theres ANOTHER single koopa after the 3 lol
Avatar
threecreepio 2025-12-04 11:26
i know there's one underground. :b
11:26
which is like off screen
Avatar
oh i may have messed this up...
11:26
i had a cheat on
Avatar
threecreepio 2025-12-04 11:26
ahh
Avatar
dang
Avatar
threecreepio 2025-12-04 11:27
i was thinking, i hadnt seen a normal koop back there.
11:27
and the damn hammer bros wont chase you to the right of course. :)
Avatar
because of course
11:27
nothing can go to the right, and theres no normal koopas by the firebar lol
Avatar
threecreepio 2025-12-04 11:28
yeah if there was just one enemy that happened to walk to the right, i think we'd have enough time to drag it along
11:28
and then all those parakoops just begging to be demoted, but, underwater
Avatar
not turning around from damage is cruel 😭
Avatar
threecreepio 2025-12-04 11:29
starting to see why it feels like the more disappointing failure, haha
11:30
feels like you couldn't have intentionally made this closer to working.
💯 1
Avatar
which slot is it that firebar turns enemies around with damage, is it 0016 or 0017
Avatar
threecreepio 2025-12-04 11:31
16
Avatar
of course this buzzy beetle you could get to turn around, literally right after it matters 😂
Avatar
threecreepio 2025-12-04 11:32
it's absolutely beautiful
Avatar
or if the blooper came a spot earlier maybe he could turn koopas around?
11:32
maybe not haha
Avatar
threecreepio 2025-12-04 11:33
no idea a blooper can turn enemies that are on the ground
11:35
but yeah a video showing SMB1 ace and that you actually can do "total control", would be neat. not sure anyone cares about the total control, but i have seen people assuming that you can only actually execute like one or two instructions.
Avatar
bloopers do turn koopas around
11:38
so theres some world where we like clip into the floor with the falling platform and then get the blooper to turn a koopa around lol. But we dont live in that world
Avatar
threecreepio 2025-12-04 11:40
ahh neat. :) i think i could get a firebar to spawn near the first bowser and maybe that would be able to turn a cheep.. but, i think even if i did the cheep would be too slow to help
11:40
and you need fire, so
11:40
at least for one bowser
11:41
i got the impression you managed to set it up yourself, so dont need my janky tas? :)
11:42
its really just savestated through anyway, nothing complicated that needs to be done
Avatar
does the game not spawn anything after its spawned a flag or something
Avatar
threecreepio 2025-12-04 11:45
oh it does, you can get a flag spawn without a problem
11:45
just as long as there's only one slot free when bowser wants to spawn and you're all good
Avatar
i hit a spot where it spawned like invisible flag and "powerup" (not in powerup slot) and then nothing spawned after that
11:46
just trying to see whats after this bowser, and the "flags" you were referring to
Avatar
threecreepio 2025-12-04 11:46
yeah i think the spawn after that is just tricky. i used the underground koop to get by it
11:47
so just walked until things were spawning so i could get a free early slot
Avatar
the slots arent full so i dont know why things stop spawning
11:47
do you have a tas of you messing with stuff farther down the line
11:47
or like wher eit would work if we had enough time
Avatar
threecreepio 2025-12-04 11:49
yeah it is a ways though, i hadnt noticed how far it was. :)
11:49
this should get there, if you prevent the timer expiry
312.66 KB
Avatar
thank you!
Avatar
threecreepio 2025-12-04 11:50
im sure you can shave off time but, not that much
Avatar
oh i guess i need to freeze the timer after entering -1 🙂
Avatar
threecreepio 2025-12-04 11:50
haha yeah
11:51
otherwise you'll be waiting a while at the flag
11:52
you can also kill the bowser at the start of the level, but it didnt feel like it opened up many options
Avatar
can you explain the steps here (if you remember them) like why killing certain enemies matter, what waiting by the floor koopa does, etc?
Avatar
threecreepio 2025-12-04 11:55
ehm mostly there are a lot of entities around there that never despawn, like, vines and flagpoles. so by keeping a slot filled with an entity that you can get rid of you just try to walk to the point where the spawns have been skipped so you can keep a slot available. since as soon as all the slots are filled there's nothing more you can do
Avatar
gotcha
11:55
i couldnt reall ytell what the purpose of standing by the floor koopa was though, like he just goes off screen at the same time no?
Avatar
threecreepio 2025-12-04 11:56
its the enemy with type 4
11:56
which is a glitched koopa thats walking off sreen
Avatar
oh, huh
11:56
could i have that lua where all the numbers show up on the enemies
Avatar
threecreepio 2025-12-04 11:56
ive managed to get it to walk at twice that speed before
Avatar
threecreepio 2025-12-04 11:57
it just takes whatever the speed was in that slot, so
11:58
here it is. its a very hacked up script that i was working on a few years ago, because i started getting annoyed by my script that puts a lot of overlays over the game. :)
29.17 KB
Avatar
hmm im only seeing the ❤️ threecreepio in the corner
Avatar
threecreepio 2025-12-04 12:01
hm it should open a tiny window with some buttons on it
12:01
Avatar
threecreepio 2025-12-04 12:01
then you just click enemies
Avatar
wow thats awesome
Avatar
threecreepio 2025-12-04 12:02
gives a lot more options for jamming stuff in at least. was thinking i'd add some ways to add/remove the different memory areas you might want for enemies. but not done that much with it.
Avatar
man and OF COURSE this one that you could actually get to the right of, is a goomba, which doesn't TURN AROUND lol
Avatar
threecreepio 2025-12-04 12:06
yeah :D its amazing
Avatar
whats the spawn 1 tile to the right at the end? The spring?
Avatar
threecreepio 2025-12-04 12:07
there's a bullet bill, and then there's a spring
Avatar
the one you said would've worked if it was closer
Avatar
Avatar
threecreepio
https://www.youtube.com/watch?v=2V0HguV68o8 eh someone may have a bigger disappointment, but, it's so close. if i could just turn those koops, or if they spawned a tiny bit later.. and then there's a spawn like 1 tile to the right at the ending, if that was a little to the left, it would have worked. but just perfectly lines up to where it doesn't. :) i was looking at it quite a while back and it just felt so close that like, there's gotta be a way to do it. but still haven't figured it out. (edited)
here
Avatar
threecreepio 2025-12-04 12:08
yeah the bullet should be able to trigger it
12:09
they're like almost on top of eachother, but bowser is first :)
Avatar
ok so if that was closer it would be 4 slots full, we'd get glitch round 2, and then we'd wait until another regular koopa for ACE to happen?
Avatar
threecreepio 2025-12-04 12:10
ah right yeah didnt think about the koop. :) that might still ruin that idea then
12:10
or would it. i'll have to check
Avatar
is this tas you sent supposed to end on an ACE
Avatar
threecreepio 2025-12-04 12:11
nah not in that version, it just shows the bowser over there
12:11
but ive done ACE off that one, so, it does work.
12:12
i just crashed it but still.
Avatar
how do you ace with this guy once you load him
Avatar
threecreepio 2025-12-04 12:13
ehm i think in that TAS i had 1 extra slot left open, not sure if i have a save without that. otherwise i can probably make one, i just messed around manipulating slots until it worked out.
12:13
i think i may not have killed the earlier bowser when i did the ACE version
12:14
i can check though
Avatar
oh i mean like you need a koopa right or
Avatar
threecreepio 2025-12-04 12:15
no thats why i was a little confused, it still spawned in properly but there was as far as i recall no koop for it to take over
Avatar
so i guess it just went down the line until it hit some other 00 in the code and crashed?
Avatar
threecreepio 2025-12-04 12:24
ok i have no recollection of how i got this to work now.. there is a green paratroopa that you can spawn in right before the bowser, and you can shoot it and while its falling its an enemy type 0 and can be taken over, but then i needed another clear slot, which i thought i have from a horizontal platform, but i cant get it now
12:26
i really need to just write something to show me all the upcoming spawns
12:27
brain gets fried so fast trying to do these things.
Avatar
yeah i know, it's tough when we cant just look at a map of all the things that can spawn or whatever
Avatar
threecreepio 2025-12-04 12:30
yeah definitely worth writing a little lua parser for it. its not like the format is difficult
Avatar
do you care if i share this with others like Lain/Simplistic
Avatar
threecreepio 2025-12-04 12:50
suppose not, im not making much more progress anyway. :)
Avatar
ok, thanks man. I was thinking i might just do a quick little video covering all the ways this is almost possible- but i realized i have to explain ace in the first place for it to make any sense lol. So I'll probably end up doing a 2j ace video afterall and this will be like a second half to it.
12:52
but i dont think i have time for that this month
12:52
that will give some more time to explore this more as well
Avatar
threecreepio 2025-12-04 12:53
yeah i think getting something in with the TC could be fun, just not sure what to show off.. there's always "Bad Apple" but it feels a little done.
Avatar
in 2j?
Avatar
threecreepio 2025-12-04 12:53
i looked at the spawns (dont mind the level data i didnt bother to change that..) and there's so many enemies there..
Avatar
oh wow wait what theres so many koopas
Avatar
Avatar
Kosmic
in 2j?
threecreepio 2025-12-04 12:53
yeah, that we can swap out all of the PRG and CHR with whatever we want
12:53
i have no idea whats making things spawn or not spawn, so :)
Avatar
Avatar
threecreepio
yeah, that we can swap out all of the PRG and CHR with whatever we want
lain made a neat triple ACE tas at least
12:54
this is a great referenc,e thanks for that
12:54
i was wondering if there were a lot of things not spawning
Avatar
threecreepio 2025-12-04 12:55
yeah smbutil wasnt that helpful
Avatar
im also imagining a way it's possible to have the right enemies coming from the midway, but only if you could magically get fireflower back lol
Avatar
threecreepio 2025-12-04 12:56
yeah andrew mentioned the thing in 7-2 or whatever with spawning a mushroom
12:57
but then you need to do the vine death thing, and that'll change so much that i doubt it's worth it
12:59
i think that glitches out the entire enemy data area
Avatar
spawning a mushroom?
13:17
oh sorry i was thinking 7-3
13:18
i didnt know you could spawn a mushroom with that glitch haha
13:18
that is interesting to consider the vine from the start and the midway
Avatar
threecreepio 2025-12-04 13:57
yeah. i did take a quick look at it way back but didnt seem to give me much of anything useable. but maybe
Avatar
threecreepio 2025-12-04 14:11
does just have that feel like this has to be possible
14:12
but it is tricky, since you have to kill that bowser after the flag so that clears everything
Avatar
Avatar
threecreepio
i looked at the spawns (dont mind the level data i didnt bother to change that..) and there's so many enemies there..
how did you get smbutil to show this? Is it just a file that can be shared or?
Avatar
Avatar
threecreepio
you can also kill the bowser at the start of the level, but it didnt feel like it opened up many options
I guess when you did this you had to have the special Y pos to avoid crashing near the flagpole? And all those fireworks go off in the sky and stuff?
17:43
wondering if stuff past the flagpole is way different too
Avatar
Avatar
Kosmic
I guess when you did this you had to have the special Y pos to avoid crashing near the flagpole? And all those fireworks go off in the sky and stuff?
threecreepio 2025-12-04 17:44
You just need some value in zeropage to be 31, fireball x pos is a good choice
Avatar
Avatar
Kosmic
how did you get smbutil to show this? Is it just a file that can be shared or?
threecreepio 2025-12-04 17:45
Yeah not home atm but i can send it later. I just hacked the enemy data for -1 into another level to look at it
Avatar
ok yeah that would be good. Thanks 🙂
17:47
and wondering about the cheep cheep you were thinking you could turn around with the firebar
17:47
thats not the same one thats in the floor right next to the flagpole is it?
Avatar
threecreepio 2025-12-04 17:48
Yeah, you can get a firebar right after it. But it doesn’t help much since you know.. taking damage.
17:48
And not sure if it can even spawn in slot 1
Avatar
threecreepio 2025-12-04 18:23
40.02 KB
Avatar
Avatar
threecreepio
Yeah, you can get a firebar right after it. But it doesn’t help much since you know.. taking damage.
i was more wondering how it would help at all, since it's at floor height. Oh I guess to have 1 more enemy on screen later
18:27
problem then is not even losing fire, it's that even if you killed bowser he'd despawn the cheep
Avatar
threecreepio 2025-12-04 18:43
true
18:43
pretty much stuck with that point being a full enemy reset
Avatar
for a moment i was like wait let's use the first bowser. But, we dont have anything in the powerup slot yet
Avatar
threecreepio 2025-12-05 11:41
if you could do the vine glitch without losing fire, then it might have been an option.
Avatar
threecreepio 2025-12-05 11:51
yeah at the very least, if you could get the vine glitch without losing fire, you could get the glitch set up and make it to that next bowser in time. but with just 11 ticks left on the clock so even if it would have helped we would probably need some manips that would slow it down too much.
11:52
and for the biggest F U that i've seen in this game. when you kill that second bowser.. it turns into a powerup (which hurts you if you touch it.)
Avatar
what 😂
Avatar
threecreepio 2025-12-05 11:52
i swear this was coded intentionally
Avatar
could you share the tas for this
Avatar
threecreepio 2025-12-05 11:53
if you were to make a "all the ways the game refuses to let you do ACE in SMB1" this would be an amazing addition.
Avatar
it's weird that it turns into something different than the others
Avatar
Avatar
threecreepio
if you were to make a "all the ways the game refuses to let you do ACE in SMB1" this would be an amazing addition.
that is certainly the plan!!
Avatar
threecreepio 2025-12-05 11:55
here's the inputs, but, you do need to manually adjust your powerup state when entering -1 the second time
👍 1
11:55
which you can do by changing 754 to 0, 756 to 2
Avatar
Thanks for all your effort on this 🙂
11:56
it's so cool. But so annoying haha
Avatar
threecreepio 2025-12-05 11:57
yeah this'll be perfect for my compilation of things i've done that just never worked out, like the plant despawn (edited)
11:59
probably worth checking what happens from the start of the level too, not that it matters.
17:14
enemies actually just DONT turn each other around when underwater
17:14
when areatype = 0
Avatar
threecreepio 2025-12-05 17:14
oh perfect
17:14
i knew i hated underwater areas for a reason.
Avatar
so if it was a swimming level but not "underwater" then it would work 😂
17:15
like damage would turn them around too
Avatar
threecreepio 2025-12-05 17:15
haha
Avatar
i dont think the game ever loads swimming flag but not underwater type though
17:15
naturally
17:15
maybe im wrong? cant think of an instance of glitched world where that happened
Avatar
threecreepio 2025-12-05 17:17
hm yeah probably not
Avatar
bloopers actually dont turn cheep cheeps around 😂 nothing does 😂
17:22
why did they make this a thing in underwater levels 🙁
17:22
there is nothing in smb1 that this decision would affect... cheeps already never turn around
17:23
in 2j it would affect turning koopas or buzzy beetles around when you run into them
17:23
or spinies
17:23
or goombas, whatever
17:23
haha. Doesnt really matter
Avatar
threecreepio 2025-12-05 17:23
yeah if they were turned around when you were underwater like normal, what would be the difference..
Avatar
i thought they implemented it this way so that cheeps wouldnt turn around cuz that would be really weird, but yeah they are just impossible to turn around. There's no reason for this kosmicSad
17:24
same way that like bullet bills dont turnaround on land levels
17:24
literally flip 1 bit and we have ace in smb1
Avatar
threecreepio 2025-12-05 17:25
so we just need a single cosmic ray, easy
Avatar
if you got a different enemy there that wasnt a koopa, would it still lead to ace
17:26
like you trigger 2nd glitch but then find a koopa later or something?
17:26
Er i guess you said the later bowser one still crashed even though there was no koopa (edited)
17:27
this is my list so far of our dilemma Need 1 more Bullet barely too late Koopas barely too early Normally could turn them around with damage… doesn’t happen underwater Could turn them around by being on the right side of them when they land…. They are not high up. The goomba is…. Goombas dont turn around. Exactly 1 enemy too late, the buzzy beetle you can turn around Bloopers could come down and turn koopas around but blooper is too late Actually… enemies never turn each other around when underwater Assuming this is done so bloopers dont turn cheep cheeps around ..is what i thought. But they never turn around regardless. Why??? Could do it later but run out of time lol Could maybe do it with earlier firebar? But it’s actually not a full double firebar…. Could maybe turn enemies around with firebar glitch but firebar isn’t next to enemies on the ground Test if COULD turn cheep cheep around…. But cheep is too slow lol!! Out of time Hammer bros chase you after a while….. But NOT to the right! Earlier bowser??? How close is that. Oh… powerup slot Midway, different bowser? If you could keep fire from midway with the vine glitch it’s possible (apparently?) Killing bowser turns into a fireflower that hurts you lol??
Avatar
threecreepio 2025-12-05 17:28
no i think you need some slot with enemy id 0, there was a koop right before that i had shot, so while its dying it was a 0
Avatar
oh i see
17:29
do you think theres a path to victory if we did get the glitch on that bowser, but no koopa on screen
17:29
just have to find 1 koopa later right
Avatar
threecreepio 2025-12-05 17:30
but ive no idea what i had that filled 2 slots. i think i might have walked the buzzy beetle and the glitched koop over or something. i was kinda just wasting time testing things that wouldn't work anyway.
Avatar
Avatar
Kosmic
do you think theres a path to victory if we did get the glitch on that bowser, but no koopa on screen
threecreepio 2025-12-05 17:31
nah you'd need to delay the bowser spawn completely somehow, otherwise it'll just overwrite whatever 0 value it happens to find after the enemy ids
Avatar
oh i see
17:32
ok so we NEED a koopa
Avatar
threecreepio 2025-12-05 17:32
yep
17:33
i think the enemy slot is filled the same frame, anyway..
Avatar
then i feel like the only hope is these 2 that are in the sky, or some other path to victory like killing other bowsers or something
Avatar
threecreepio 2025-12-05 17:33
if it happens like, next frame, i guess there's a world where you clear an enemy slot right on the frame after bowser spawns. but i would expect its on the same frame.. if despawning turns them to 0.. cant remember right now. (edited)
Avatar
Avatar
Kosmic
then i feel like the only hope is these 2 that are in the sky, or some other path to victory like killing other bowsers or something
threecreepio 2025-12-05 17:35
yeah problem with those two is that the spawn order is.. bloober, buzzy beetle, then the firebar to the left, then the two koops. and that pretty much forces it to skip them since the game wont spawn the enemies unless they're off screen.
Avatar
man theres like 5 bowsers later
Avatar
threecreepio 2025-12-05 17:40
haha i know its fantastic
Avatar
i imagine a world where this is a properly working long firebar (i dont understand why it's not?) and you have an expendable enemy with you. You load the firebar, kill the enemy, then load bowser and win
17:42
well i guess you need a koopa
Avatar
threecreepio 2025-12-05 17:44
i think you can also do it with a bowser, maybe, for a frame
17:44
but bowser would need to be spawned so
Avatar
Avatar
threecreepio
yeah problem with those two is that the spawn order is.. bloober, buzzy beetle, then the firebar to the left, then the two koops. and that pretty much forces it to skip them since the game wont spawn the enemies unless they're off screen.
just so i understand how this works, if the firebar was "on screen" so it didnt load in, but the koopa load in point was still off screen, would it load in?
Avatar
threecreepio 2025-12-05 17:47
yeah i think it can still handle that, as long as they're off screen. there's some leeway period where it'll still spawn.. not sure how big it is though.
17:47
i guess it wouldn't be too hard to test with some ram editing (edited)
17:49
nah they're too far left, didn't notice they were right around the bloober spawn, and thats definitely plenty on screen by the time the beetle spawns
Avatar
threecreepio 2025-12-05 17:52
getting that firebar spawn would have also been good enough
17:53
assuming we can get the koops in the first slots, not sure
Avatar
how far off screen is "off screen" ? If the koopa was like 2 blocks to the right would it work
17:53
it is roughly in this square here
Avatar
threecreepio 2025-12-05 17:54
yeah im not sure what the distance is.. i feel like its 2 blocks off the right edge..
Avatar
literally so close with all the spawn positions and spawn order. If this guy was just in front of the buzzy beetle like he should be 😭
17:55
like theres such a world where this koopa just spawns in place of the beetle and it works out perfectly kosmicSad
Avatar
Avatar
threecreepio
getting that firebar spawn would have also been good enough
how would that work? still missing a koopa right?
Avatar
threecreepio 2025-12-05 17:57
this doesnt spawn
17:57
and this does
17:57
so it needs to be pretty dang close
Avatar
so he needs to be 3 blocks to the right
Avatar
Avatar
Kosmic
how would that work? still missing a koopa right?
threecreepio 2025-12-05 17:58
i meant if we had that firebar by the koops we should be able to use the firebar collision to turn them around at least
Avatar
ooh yeah
17:58
oh man
Avatar
threecreepio 2025-12-05 17:58
haha
Avatar
ok well, putting this on the backburner again for now. Will bring it up with lain/simplistic at some point and see if they have any ideas
18:00
ill make a group chat with all of us
Avatar
threecreepio 2025-12-05 18:00
yeah that makes sense
Avatar
i just got back on this after seeing this clip and the beetle not turning the spinies around
Avatar
threecreepio 2025-12-05 18:01
ahh haha
18:01
just a really weird thing to have disabled
Avatar
yeah this is what i was going off about earlier
18:03
why is this a thing, cheeps dont turn around anyway. And theres no other enemies in smb1
18:04
in 2j theres these ground enemies but it's weird that they go through each other
18:04
so idk why it's a thing
Avatar
threecreepio 2025-12-05 18:05
yeah they already have logic for enemies that don't turn around anyway
Avatar
trying to find in code where this distinction would be
Avatar
threecreepio 2025-12-05 18:08
should be in HandlePECollisions
18:09
hm maybe not
18:10
maybe the checks in EnemiesCollision for water areas stop it
18:12
let me game genie code to test this. I could just set these 4 instructions to NOP's or something right
18:12
or even 2 i guess
Avatar
threecreepio 2025-12-05 18:13
could probably just change the beq to bcc
Avatar
Avatar
threecreepio
You just need some value in zeropage to be 31, fireball x pos is a good choice
could you explain how to set this up? I tried it like this but thats not right
Avatar
ok I tried "fireball relative Xpos" as well but that didnt work
Avatar
Avatar
threecreepio
i dont think so, i think it should just turn whatever enemy is in the first slot
im trying to turn the grey cheep around, just for testing, and i took damage from the firebar with the cheep cheep in slot 0, but it didn't turn around. Am I misunderstanding how it works?
15:30
Avatar
threecreepio 2026-02-16 18:57
do you happen to know how to clip through a flagpole underwater?
18:57
happylee said i should just do that instead of the floor clip because its so much easier but eh, i have no idea how to do that :D
Avatar
oh, huh... no i didnt know about that
18:59
did you show him everything?
Avatar
threecreepio 2026-02-16 18:59
well i sent him the video i made, and he tested it out himself
19:02
can definitely see it being possible
19:03
oh i got it
19:04
ok its actually not bad
19:04
i see how it works
19:04
you just start clipping and then you can swim into the block above to stay in the "air" and keep clippintg
19:05
the final bowser is on page 57 or something and going from the midway and clipping through the flag you can get to like, 42 maybe lol
19:05
at full speed
Avatar
threecreepio 2026-02-16 19:05
ah nice. yeah i imagine it would still not help much
Avatar
er not final bowser, but the next one
Avatar
threecreepio 2026-02-16 19:06
but it would give a little more space for things to work with the vine, even if it's not as interesting with the vine
Avatar
do you know how it works with the vine?
19:06
thats another version i want to show off
19:06
i just have it written down that if you could respawn with fireflower you could ace, but i dont know the details
19:07
i was trying to look at it here, as you can see there are these koopas
19:07
but after the first bowser a bunch of glitched objects spawn and filled slots
Avatar
threecreepio 2026-02-16 19:07
well it just skips ahead in the enemy table, for -1 it's still inside the normal enemy table, so you just get spawns at different places. which is.. fine.. but it doesn't help us. i think in the underwater levels it jumps outside the normal enemy data area or something.
19:08
oh did it give other glitched objects for you in -1? (edited)
Avatar
yeah, it deletes the star flag, and the slots arent even full but nothing spawns now
Avatar
threecreepio 2026-02-16 19:19
if it had like, ended up half-way through an enemy or something with the new position, that could probably have had more effects too, but doesn't seem to do anything too notable
Avatar
ah interesting i see
Avatar
threecreepio 2026-02-16 19:38
everything is so unpleasant to do underwater
Avatar
Besides clipping, we get free floor clips and ffpgs and getting past the flag... But if we could stomp a single enemy or, like, literally anything we could ace
Avatar
threecreepio 2026-02-16 21:59
yeah we really did not luck out with that..
Avatar
do you know if it's possible at all to get the long firebar near bowser to spawn? Like lets say there are 0 sprite slots filled. Will we get bowser to load and then long firebar to load? Or is the long firebar too far to the right?
Avatar
^ did you go down this rabbit hole before? Dude this is another one which literally would work if the sprites weren't arranged perfectly wrong
Avatar
threecreepio 2026-02-20 13:57
i don't think i've looked at that one, is it spawning in to the left of bowser, but after in the enemy list? it's a real shame the level format allows that to happen.. and that they then 'handle' is by just skipping over the spawn.
Avatar
yeah it's listed after bowser, but to his left
13:57
just like everything else useful near the second bowser......
13:57
or rather they all come after that beetle
13:58
which if the beetle was 1 tile to the right i think it'd be guaranteed to be after the others? Because of page values?
13:58
I want to test this for sure but im not sure exactly how to properly modify the enemy list in smb util
13:58
as well as that hack you sent over is in 1-1 so it doesn't work perfectly right. But i could move it to 5-3 or whatever
Avatar
threecreepio 2026-02-20 13:59
moving it to 5-3 or something shouldn't be a problem
Avatar
id love to make a tas of this where i just move teh long firebar above bowser in the order. I'm pretty postiive i could get the overflow glitch twice. No green koopa at that point
Avatar
threecreepio 2026-02-20 13:59
i guess smbutil refuses to put things in bad orders if you start trying to change things?
Avatar
correct
Avatar
threecreepio 2026-02-20 14:00
that is sensible.
Avatar
so i can drag the firebar around and it changes the order
14:00
is it possible if you trigger it twice, but no green koopa on screen, to still get ACE?
14:00
the value is gonna get written somewhere else I guess
Avatar
threecreepio 2026-02-20 14:00
yeah it'll get written off the end of the enemy_ids which doesn't have anything very useful in it i don't think
14:01
does the duplicate object spawn on the same frame as bowser/the long firebar?
Avatar
threecreepio 2026-02-20 14:01
thought so, dang
14:02
since eraseenemyobjects clears enemy_id, if it duplicated like the frame after or something, you could have "just" made sure 1 enemy despawned the frame after bowser spawns
14:03
but yeah. checked the code, same frame
Avatar
Avatar
threecreepio
since eraseenemyobjects clears enemy_id, if it duplicated like the frame after or something, you could have "just" made sure 1 enemy despawned the frame after bowser spawns
oh i see, smart
14:06
ok i moved the minus world level to 6-1. And moved the firebar above bowser in the list
Avatar
threecreepio 2026-02-20 14:09
make any difference? felt like that firebar would spawn in a bit too early?
Avatar
im not sure, testing it
14:13
i actually need to move it to world 8 so bowsers delete objects when killed
14:13
er wait, sorry
14:14
yes the problem is that the firebar spawns too early so you cant do it because bowser needs to load first
14:14
so im moving it up in the list so it spawns before bowser
14:15
then you can trigger ace with bowser while still having a slot full, and not have to clear the enemy slots
14:17
wait nevermind we dont even need this, i think i can do it with the small firebar
Avatar
threecreepio 2026-02-20 14:19
such a weird way to have implemented turning off turnaround logic. not like, the cheeps cheeps don't turn.. just, nothing can turn around underwater.
Avatar
well it's just a side effect of trying to prevent stomping underwater, right
14:20
they happened to put the turnaround code later after the branch out to get away from stomping underwater
14:21
like if water level -> just injure the player, dont bother checking if we stomped them or not
14:21
but if we continue, then do all the checks of stomping, turning around, etc
14:21
could've easily been coded a little differently and gg 🙁
Avatar
threecreepio 2026-02-20 14:21
yeah that's fair
14:21
mmm
Avatar
or if this stupid
14:21
beetle
14:21
was not in the list before literally everything else
14:22
theres no useful stuff, and then theres a billion useful things but theyre all locked behind this beetle, then theres no useful stuff until we run out of time, then theres 20 bowsers
Avatar
threecreepio 2026-02-20 14:22
it's just such a great level
Avatar
we're actually really lucky it doesn't crash in regular playthroughs for mwe
14:23
but yeah it is being incredibly frustrating for ace
Avatar
threecreepio 2026-02-20 14:24
and then of course killing that second bowser clears the whole state, and for just the bit between that bowser and the next one nothing really interesting is happening
Avatar
i know dude
14:24
theres all this junk that clogs up slots
14:24
except right when we need slots full
14:25
theres just nothing
14:25
and theres like 8 koopas around this bowser
Avatar
threecreepio 2026-02-20 14:25
then immediately after it goes back to being nuts
Avatar
and we cant get 1 of them on screen
Avatar
threecreepio 2026-02-20 14:25
and the buzzy beetle is the first thing we can even get to turn around
Avatar
yeah exactly 1 enemy too late
14:25
the goomba we could get to the right of
14:25
goombas dont turn around
14:26
hammer bro doesnt chase to the right
14:26
cant turn underwater
Avatar
threecreepio 2026-02-20 14:26
can you do second quest MWE?
Avatar
.......................................
Avatar
threecreepio 2026-02-20 14:26
yeah
14:26
creepio
14:26
! lol
14:26
thats not fast but
14:26
that should do something
Avatar
threecreepio 2026-02-20 14:26
its definitely worth checking (edited)
Avatar
thats big
14:27
ok im testing this firebar thing really fast then im jumping on that
Avatar
threecreepio 2026-02-20 14:27
i dont know how it took me like a year to think of that..
Avatar
sometimes you just have to keep staring at stuff
14:27
and ranting to your rubber duck friends
14:27
we have fun bricks because of w8... i dont really want that in footage lol but i dont know how to insert this directly into minus world from smb util
Avatar
threecreepio 2026-02-20 14:28
if you look at the bytes in smbutil, you could probably hexedit search that in the normal rom and change it? kinda annoying..
14:32
yep. at least there was nothing super special about the goomba to make it not turn into a buzzy, so, new territory!
14:33
now im sitting in the middle of a coworking space with super mario up..
Avatar
testing beetle rn
Avatar
threecreepio 2026-02-20 14:36
successfully crashes, at least, which is a new thing to happen
Avatar
oh i have to brb
14:37
thats the closest yet!!!
14:37
thats big
14:37
not fast, but..... big
14:38
quest 2, japanese version any% lol
Avatar
threecreepio 2026-02-20 14:39
i mean i'll take it for now at least.. if nothing else, it'll be another interesting potential thing that fell short, we have a lot of those!
Avatar
had stuff i have to take care of, but ill be back at it in like 90 minutes and share a tas of the crash with everyone
Avatar
threecreepio 2026-02-20 15:57
sounds good
Avatar
threecreepio 2026-02-20 18:31
i mean its encouraging in a way to at least find new things every now and then
Avatar
definitely
18:35
closer than it's ever been... sort of
18:35
i mean for sure
18:35
but yea
Avatar
threecreepio 2026-02-20 19:31
i dont think it would help in any way, but it is funny if you do the vine glitch you get 2 koops that perfectly line up so they can't move because of the completely unnecessary second solid block at the large castles.
Avatar
right 🤦‍♂️ like we almost got them going to the right there
19:32
but yeah i guess they would disappear from bowser
19:32
unless you had access to the stinkin long firebar
19:32
and theres no more later
Avatar
threecreepio 2026-02-20 19:32
yeah you can walk with them toward the next bowser.. but seemed like you would need like an extra 40-50 on the timer to make it
Avatar
quest 2??
19:33
faster koops haha
Avatar
threecreepio 2026-02-20 19:33
yeah
Avatar
oh did you already do that
Avatar
threecreepio 2026-02-20 19:33
mmm
19:33
first quest you're nowhere close to it working unfortunately :)
19:33
and yeah with the vine glitch it's also of course more limiting because you can't fire kill bowser :)
Avatar
threecreepio 2026-02-22 19:09
it is funny that the vine glitch makes it so that that bowser can be glitched, but then the enemydata starts after the bowser right at the flagpole normally.. so the next bowser is the one that's just out of reach. and of course no fire, so, probably wouldn't help.
Avatar
yeah i dont understand exactly how the vine glitch works but it seems like it makes all the enemies appear about 14 pages earlier?
11:25
i think if you swam at absolutely max speed from the midway you might barely reach the last bowser but not sure
11:26
lots of reasons it doesnt work of course but yeah
Avatar
threecreepio 2026-02-23 11:26
it just changes the the low byte of the enemydata address to 8px above mario's Y position
Avatar
i see!
Avatar
threecreepio 2026-02-23 11:28
only in water levels, otherwise it just spawns that vine at the start.
Avatar
it's something with the bubbles isn't it?
11:30
i know it makes new enemies appear in other water levels. Is that because it starts going out of bounds? But this level has such a long enemy list that we still are just getting normal ones?
Avatar
threecreepio 2026-02-23 11:30
yeah. the code for setting up the bubbles is after the code for a vine entry, and they didn't handle the case of there being a vine entry in an underwater stage.
👍 1
11:31
if B8 ends up in the middle of an enemy definition, you start reading the wrong data
11:31
though B8 is for -1, it should be different in 2-2 since you start at a different Y position
Avatar
ah, i see. Offset
11:32
So the thing where you apparently can spawn a mushroom, thats not possible here- thats just going to be dependent on the enemy list and YPos?
Avatar
threecreepio 2026-02-23 11:33
yeah, at least as far as i've seen it shouldn't be possible.
11:36
you can of course easily get over to the last bowsers area.. not with him there though.. just despawn the flag, scroll the screen over a bit and grab it high up enough that you miss the blocks and walk all the way over there. :) but the enemy space will be very filled up by the time you get there.
Avatar
right yeah
11:39
wait i just had a crazy thought haha
11:40
hmmmmmmmmmmmm................... im having some good thoughts
Avatar
threecreepio 2026-02-23 11:41
well that sounds good..
Avatar
could you explain the 0 page thing to me, to avoid crashing after killing the first bowser
Avatar
threecreepio 2026-02-23 14:06
oh, it's just scanning through zeropage looking for the number $31 anywhere, which is the starflag. so you need to make sure something is always $31. easiest is a fireball x pos.
Avatar
oh 31 hex i guess
Avatar
threecreepio 2026-02-23 14:16
yeah
Avatar
im not really familiar with what zeropage is
14:17
but ill get the proper fireball position this time
Avatar
threecreepio 2026-02-23 14:17
just ram $000-$0FF
👍 1
Avatar
when a firebar inherits its rotation starting position from a previous enemy, do you know what address it inherits from? Is it x position?
14:45
looks like it's probably y position
Avatar
threecreepio 2026-02-23 14:52
000000r 2 FirebarSpinState_Low = $58 000000r 2 FirebarSpinState_High = $a0 000000r 2 Enemy_X_Speed = $58 000000r 2 Enemy_Y_Speed = $a0
14:52
should be those
Avatar
oh, hmm I see. Thanks!
14:53
can you take damage from a hammer after grabbing the flagpole?
Avatar
threecreepio 2026-02-23 14:55
hmmm.. good question.
Avatar
i thoguht yes and was trying to make a hammer bro later hit me to break out of victory walk mode
14:58
i actually was hoping it would just freeze the timer forever but it restarts it unfortunately
14:58
you can get a firebar to break you out of the flagpole state
Avatar
could you explain to me the invisible koopa in the floor thing, and how you made it go at a faster speed and stuff?
15:37
is there a way i can see him, with a lua or anything?
Avatar
threecreepio 2026-02-23 16:40
hm i think you can see it in the enemies list in the lua i sent you
16:41
it's just an enemy of type 04, which becomes a koop, but it doesn't clear the speed of the slot it was in
16:41
so it'll just keep going with whatever the previous enemy was in that slots speed.. so for example you can kill the hammer bro so it falls to the right and get the off-screen koop to spawn into that slot
Avatar
threecreepio 2026-02-25 02:15
this one is really sad
02:16
i cn get it to run to 6E8, at 6FC is the joypad inputs.. but the values that are right between there just can never line up so you make it through. :)
Avatar
No way 🙁
Avatar
threecreepio 2026-02-25 02:18
by some miracle it manages to make it like 1768 bytes through ram without crashing. but it cant make the last 20. :)
Avatar
And you can modify them some but not in a good way?
Avatar
threecreepio 2026-02-25 02:20
yeah it's the sprite shuffling code, the thing that makes the enemies flash when there's too many on a line, and it just moves them in a fixed cycle.
Avatar
Ohh. Wow
02:20
That's a lot of ram you made it through.. There's gotta be an instruction we can make in there??
Avatar
threecreepio 2026-02-25 02:21
possibly, problem is we don't have that much control, because the game crashes when you scroll the screen 32px
02:22
and most levels are pretty empty there. :) there's like, 4-1 has a lakitu, maybe its Y pos could be useful.. i don't know
Avatar
Ohh, I didn't know it's after the reset you would then input the controller inputs and head into the crash. Or, that's what it sounds like?
Avatar
threecreepio 2026-02-25 02:28
ah yeah
02:28
you let the game crash, then reset, and the byte should still be overwritten.
Avatar
Avatar
threecreepio
yeah it's the sprite shuffling code, the thing that makes the enemies flash when there's too many on a line, and it just moves them in a fixed cycle.
if im understanding right, that part is hard coded and no way to change it? Or the outcome changes depending on if sprite shuffling is happening?
Avatar
threecreepio 2026-02-25 13:13
yeah it shuffles every frame, moving in a little circle effectively. and it seems like no alignment that it gets into can actually make it all the way through the code. i haven't fully tested every possible 'alignment'.. can do that later.
Avatar
some magic alignment pls 🙏
13:15
then we can make a jmp instruction and crash right after, by the sounds of it kosmicGO
Avatar
threecreepio 2026-02-25 13:16
yeah i don't really know what the end goal of this particular setup is because even if we get it.. we've broken the scroll routine pretty badly..
13:19
we can probably execute 2 instructions at least, one from the X pos of an enemy in 5-1 or 8-1, and then one from mario's Y pos at the crash. but both are very very limited.. since 4-1 is the only place where we have any control of the operand.. so very limited control.. 2J had the advantage that we just needed to shift opermode over and we happen to land directly in disk loading the victory screen.. which also clears up our state pretty well to prevent crashes. Not as easy in SMB1. :)
Avatar
threecreepio 2026-02-25 14:19
it's absolutely unbelievable to me that this might end up working..
Avatar
This is insane haha
14:20
It's soooo elaborate
Avatar
threecreepio 2026-02-25 14:22
like i saw that PPU open bus thing when i tested out the buzzy and figured that's obviously a dead end, what are the odds we won't just just get completely unpredictable crashes here..
Avatar
ONE thing finally panned out
14:23
Of course it was the absurd one
14:23
Not just, any one enemy spot working out
Avatar
threecreepio 2026-02-25 14:24
should make for a ridiculously weird video.
Avatar
I want to explain 2j ace and ace in general very well. But there's SO much to talk about in smb1
14:25
And I have 2 weeks
Avatar
threecreepio 2026-02-25 14:25
haha
Avatar
threecreepio 2026-02-25 14:26
and yeah someone needs to cover 2j total control, since abyssofts video kinda implies it wouldn't work.. probably with subframe input changes so it doesn't take 6 minutes to change game.
14:27
i was a little concerned when i watched that video and heard the announcement like.. you're about to make a video about how hard i've failed at finding something useful. :)
Avatar
😂 Noo, it not being possible wouldn't be a failure on your part
14:28
You have gotten us all the way here man
14:29
Initial idea, buzzy beetle, infinite time
Avatar
threecreepio 2026-02-25 14:39
people have written me like "i'm so excited to see your ACE setup in smb1!"
Avatar
Oh wow haha.sorry for the pressure
14:50
I feel like I was clear that it was close and might be possible.. But a lot of people just go oh man ace is real
14:50
😐
Avatar
threecreepio 2026-02-25 14:54
haha it's all good
14:54
have to send a clip of this.. what a beautiful level -1 can be
14:56
😂 1
14:56
oh hey, power-up. :D
14:57
but it's a spiny :(
Avatar
oh man what haha
15:03
is that because we have that glitched powerup in whatever slot and then spiny overwrites it?
Avatar
threecreepio 2026-02-25 15:11
i think it spawned in a powerup but didn't overwrite the enemy id or something.. no idea really
15:17
how the hell did that just work..
Avatar
threecreepio 2026-02-25 15:38
love this game sometimes. :)
Avatar
threecreepio 2026-02-25 16:37
so that was easy. :D
Avatar
thats crazy man lol
16:43
like ugh wow it was so close i thought we had it
16:43
what are the chances something else works
16:43
boom grow a flower
Avatar
threecreepio 2026-02-25 16:45
haha
Avatar
threecreepio 2026-02-25 16:55
i feel like we're definitely going to have some setups.. i'm a little too tired to set up the enemy manip for it right now, but, somehow i imagine simplistic may be working on one.
Avatar
makes sense
16:55
you did it man
16:55
i hope you can survive and make it home and get some sleep!!!
Avatar
threecreepio 2026-02-25 16:55
this has been a journey..
16:56
i wonder if the -1 things are RTA'able. not that it would be a timesave.
Avatar
right. Yeah it seems like something that would be hard to be set up for
16:57
you can easily get over there and bring a beetle
16:57
but then it's like, blooper height and 1/3 chance of the right frame or something?
Avatar
threecreepio 2026-02-25 16:59
yeah seemed to be something like that.
Avatar
doing ace to make the ace possible is so fun/cool
01:00
when it was ace to get infinite time so we could ace later i thought that was really sick
01:00
this is a much cleaner solution but yeah lol
Avatar
threecreepio 2026-02-26 01:02
yeah the timer thing would have been kinda clean in a way, but, this also makes it interesting, involves more of the game, world select.
01:04
think i'm going to look through all the different luigi addresses, see what exactly changes. probaly won't find anything better for ACE but maybe there's something fun in there.
Avatar
yeah the situation is so complex with all the opcodes you guys were throwing around, for all we know there are other path(s)
01:04
but i'm very happy we got one working
Avatar
threecreepio 2026-02-26 01:06
what a huge change.
01:07
yeah i think the only real improvement we could get over the powerup is something that is easier to return back to normal execution from. because the powerup changes need a little nudging to get avoid crashes. but it's still really good.
Avatar
Avatar
threecreepio
what a huge change.
wait what happened here, did it put 2 extra koopas
Avatar
threecreepio 2026-02-26 01:10
nah it just moved the platform a little
Avatar
oh lol
01:11
ohhh sorry
01:11
i was looking at those two pictures side by side, really confused
01:11
but they are two pictures. Lol
01:12
i thought it was 1 screenshot
01:12
i was like it inserted a whole platform? Im misremembering the layout?
Avatar
threecreepio 2026-02-26 01:12
9D : Write $20 to address $9D9E is a lot of fun.
Avatar
whats that
Avatar
threecreepio 2026-02-26 01:12
one of the other things that can happen from the Luigi change
01:13
i'll make a little clip of it
01:16
Avatar
threecreepio 2026-02-26 11:53
also that we needed to fix the emulators is a nice touch.. (edited)
Avatar
Avatar
threecreepio
Click to see attachment 🖼️
oh, woah. Just saw this
11:54
it combined 2-1 and 2-3?
Avatar
Avatar
threecreepio
also that we needed to fix the emulators is a nice touch.. (edited)
thats true lol
Avatar
threecreepio 2026-02-26 11:55
haha yeah it completely flips out the level data. wouldn't be surprised if that can also lead to ACE somehow.
Avatar
oh does it do this for more levels than just 2-1?
Avatar
threecreepio 2026-02-26 11:56
yeah any time you hit a block it will do something
Avatar
oh wow
Avatar
threecreepio 2026-02-26 11:56
you can just open the fceux cheats, set 9D9E to 20, and hit some blocks to play with it
Avatar
i seee
11:56
i want to do a stream of that haha
Avatar
threecreepio 2026-02-26 11:57
glitched worlds returns!
🔥 1
Avatar
does the block have to bounce upward
Avatar
threecreepio 2026-02-26 11:57
it should work on power-up blocks or normal blocks
11:59
it changes this to.. JSR $95B5 which happens to line up with tha players animation code cleanly, so that part gets by fine.. then the byte after that becomes the next instruction and it goes off the rails a bit. but without crashing, somehow!
Avatar
so, it's getting stuck at "0F3A" as far as I can tell. But if I do ctrl+F in the .lst there is not 0F3A. How do I know where i actually am?
Avatar
threecreepio 2026-02-26 12:26
so any value there, you need to take %0x800, or the easier approach.. just F => 7
12:26
so that is equivalent to 73A. the RAM is mirrored 4 times.. so address $000 is also $800, $1000 and $1800
Avatar
oh this is the mirroring thing?
Avatar
threecreepio 2026-02-26 12:27
yeah
Avatar
oh you said that
12:27
i see!
Avatar
threecreepio 2026-02-26 12:27
so you can just search for 73A in the document and you should find it.
Avatar
ok it's because the koopas are on page 2, haha
Avatar
threecreepio 2026-02-26 12:28
sometimes you won't find the ram area, that can either be that it's unused or that it's used as an array, effectively.. so like lda enemy_id,x will be loading like.. $16,$17,$18,$19 or whatever.. but only $16 is documented.
12:29
ahh haha, yeah the page numbers can really mess with you. i can't believe how incredibly lucky it is that this code happened to put execution so close to the controller inputs..
12:34
oh btw, can you send me the version of bizhawk that has the fix in it?
Avatar
threecreepio 2026-02-26 12:34
beautiful
Avatar
threecreepio 2026-02-26 12:36
great, thank you! going to have to poke a bit more at that PPU stuff just to make sure there's nothing else that's been missed. :) but i can't imagine we'll find anything better than this.
Avatar
do you have a tas of hitting ctl1 from the later bowser, with the timer ace/hack enabled?
19:03
i would like to show that for footage
Avatar
threecreepio 2026-02-26 19:09
that is a good question.
Avatar
threecreepio 2026-02-26 21:27
it's also funny how, this is the code that's executing with the corrupted player_state.. so that state can be.. 80, 81, 82, 83 or 84 depending on which slot bowser spawned into. it's then multiplied by 2 to get the offset into the MoveSubs jump table. Since $80 is the top bit, multiplying that by 2 gives you 0.. so the resulting values are.. $00, $02, $04 and $06. 00, 02 and 04 are perfectly valid values and will just make mario behave very slightly different for a frame or so before it reset.. 84 just happens to be the 1 slot it can be in that puts you outside of the actual player state table, and that happens to have a $20 as the second byte putting us into PPU and saving this whole setup.
Avatar
threecreepio 2026-02-26 21:59
i think i no longer have this record
❤️ 1
Avatar
Avatar
threecreepio
it's also funny how, this is the code that's executing with the corrupted player_state.. so that state can be.. 80, 81, 82, 83 or 84 depending on which slot bowser spawned into. it's then multiplied by 2 to get the offset into the MoveSubs jump table. Since $80 is the top bit, multiplying that by 2 gives you 0.. so the resulting values are.. $00, $02, $04 and $06. 00, 02 and 04 are perfectly valid values and will just make mario behave very slightly different for a frame or so before it reset.. 84 just happens to be the 1 slot it can be in that puts you outside of the actual player state table, and that happens to have a $20 as the second byte putting us into PPU and saving this whole setup.
bowser being in the 84 slot is another actually quite big restriction i wasnt aware of before. I think a lot of my thoughts where it's super close in some other ways, would not actually work for that reason
01:11
like if the long firebar near bowser loaded, we could do things. But im not sure about getting bowser in that slot
Avatar
threecreepio 2026-02-27 01:11
trying to find the enemies i managed to drag over to get the later bowser ace, not managed to yet. :) i might have the tas saved at home, but, wrong continent.
Avatar
oh didnt you do it yesterday
Avatar
threecreepio 2026-02-27 01:17
ohhh right that, i misunderstood
01:17
i had something else with a later bowser set up a long time ago. :) i can recreate that one easy enough..
01:18
there's been a bit too many dead end branches with this whole thing.
Avatar
yeah you're good, no worries
01:25
i know a while back you tried it with infinite time
01:25
i thought you basically tried the same thing after we got the infinite timer ACE
01:25
and got to ctl1
Avatar
Avatar
threecreepio
i think i no longer have this record
you did it man. World first!
Avatar
Avatar
Kosmic
i thought you basically tried the same thing after we got the infinite timer ACE
threecreepio 2026-02-27 01:30
yeah more or less, that was the little excursion that would have been devastating if the powerups didn't instantly save us. :)
Avatar
Avatar
Kosmic
you did it man. World first!
threecreepio 2026-02-27 01:55
yeah i'm still in a bit of disbelief that it worked out.. normally i'd downplay these kinds of things but this is like, actually significant.
01:57
i'm recreating that thing now with the timer.. and it's triggering the ACE, but only on controller 2 right now, and somehow it's behaving differently than last time. :) before i would get stuck in mid-air and then get bowser to walk into me to trigger damage which led to ctl 1 inputs. right now for some reason i don't get stuck in mid-air. but all the enemies suddenly despawn after a second or so. so confusing. :)
Avatar
Huh. That's really weird lol
01:57
any extra cheat on, or different slots or inputs than before?
Avatar
threecreepio 2026-02-27 01:58
no just hard mode and the timer code
Avatar
I'm going to head to bed. No rush, can finish later if you want to. you've sacrificed a lot of sleep for us already haha.
Avatar
threecreepio 2026-02-27 02:00
yeah i mean it'll be able to lead back to ctl1 inputs soon enough, was just surprised it behaves differently. good night!
💯 1
Avatar
good night!
Avatar
threecreepio 2026-02-27 09:59
Still haven’t looked at the actual payloads, but, seems way more forgiving than 2J at least. And since we don’t need to care about damage we don’t need the B+Select thing on ctl2, so we should be able to jump much closer to enemy data and have potential RTA setups be a bit less precise. In 2J the total control thing needed to be constantly refreshing the damage timer to keep the game from crashing :)
Avatar
ohh, wow i see. Thats why it took damage a billion times lol
Avatar
threecreepio 2026-02-27 12:13
i found why everything is despawning at least. for some reason bowser is spawning slightly higher up on the screen than he did before.. and when he jumps he hits the top of the screen, and the game treats that as if he's at the bottom of the screen and has fallen into the lava, and triggers the despawns!
Avatar
oh wow wait what
12:15
that could be huge
Avatar
threecreepio 2026-02-27 12:15
so right here. which is still weird like, why does that not trigger on the first bowser in the stage?
Avatar
i have kinda seen it but it was when i fire killed him
12:15
instead of a proper death animation he just disappears
Avatar
threecreepio 2026-02-27 12:15
ah yeah, that's what would happen
12:15
if he somehow was very high up on the screen
Avatar
it seems like you also get weird behavior when you already have a previous bowser overflow glitched earlier
12:16
or actually
12:16
maybe just because theres already previous bowser slots
Avatar
threecreepio 2026-02-27 12:17
yeah they do all share a bunch of state
Avatar
yeah the first bowser can just completely screen wrap... but he doesnt die
Avatar
threecreepio 2026-02-27 12:17
there's no handling for multiple loaded bowsers, so
Avatar
yeah that seems to be why the second bowser is split in 2 parts
12:18
sometimes ive seen part of the bowser just reappear when i swim forward
Avatar
threecreepio 2026-02-27 12:18
which is a great effect, i am so happy about the split bowsers
Avatar
like all the slots are full but randomly part of a bowser just appears again later
12:18
i wondered about using that to clear enemy slots and different times or something
Avatar
threecreepio 2026-02-27 12:19
yeah like when the back half of bowser re-appears when you shoot fireballs, because fireball state is right after enemy state, so it's overwriting state from that 'broken' enemy slot
Avatar
oh it's from shooting fireballs, huh
Avatar
threecreepio 2026-02-27 12:19
which is also why you don't have 2 active fireballs on that second bowser kill
Avatar
threecreepio 2026-02-27 12:19
one of them is bowser :)
12:20
there's probably more to look into with that handling. probably nothing useful.
12:21
so it needs to have the d5 bit set. i wonder if the fireballs are setting that bit or what it is.. will need to check.
Avatar
if you could get the 2nd bowser to disappear by just, going off the screen or whatever that could maybe save time in the run (edited)
12:23
hold A+start to get back to minus world ending faster and do the powerup corruption without fire?
12:23
not sure if we can get that bowser to load without fireballing the red koopa
Avatar
threecreepio 2026-02-27 12:24
hmm not sure.
12:25
definitely will be worth figuring out exactly what sets that bit, to see if it's triggerable.
Avatar
the d5 biti s whats making him go off screen when up high?
12:26
er, dying
Avatar
threecreepio 2026-02-27 12:27
0B06D B5 1E lda Enemy_State,x ;if d5 in enemy state is not set 0B06F 29 20 and #%00100000 ;then branch elsewhere to run bowser 0B071 F0 14 beq BowserControl it is a dying flag, but i have no idea why it's getting set
Avatar
interesting
Avatar
threecreepio 2026-02-27 12:30
figure it makes sense to involve happylee? i'm alright with it. obviously should keep it a bit limited since more people is more risk it accidentally starts spreading before you can make your video, and would be fun to have a big reveal.
Avatar
threecreepio 2026-02-27 12:35
but just watch when it comes out, someone will find that there's a 10x easier way to get ACE an hour after the video releases. :)
Avatar
most very knowledgeable people have been completely surprised just by going past the flagpole in minus world lol
Avatar
Avatar
threecreepio
but just watch when it comes out, someone will find that there's a 10x easier way to get ACE an hour after the video releases. :)
yeah lol if we reveal it people could start working on it, maybe find a way to do it in quest 1
Avatar
threecreepio 2026-02-27 12:36
yeah.. and even if you do go past the flagpole you won't find anything because the slots fill up.. so you need to snipe that koop, back off..
Avatar
im glad it's working at all. But it is so close to being actually faster which would be an extra big bonus haha
12:36
seriously, if that big firebar would spawn, im pretty sure we could do it in quest 1
Avatar
threecreepio 2026-02-27 12:37
yeah i wouldn't be surprised if there are improvements to be found. quest 1 would obviously be the big one.. it feels weird that you have to beat the game to set up ACE to beat the game. :)
Avatar
yeah like, if minus world ending isn't actually "beating the game" then how does minus world ending + ace count lol
12:37
it is the actual proper ending with the right text and music but yeah it's funny/weird
Avatar
threecreepio 2026-02-27 12:37
for now i am glad that it's very very different from 2J, like, it's not just "find the same scenario that we knew works from 2J and do it in SMB1."
Avatar
yeah smb1 continues to put up its fight to be unbreakable
12:38
finally did break through after so much monumental effort
12:38
and it's still a bit slower haha
Avatar
threecreepio 2026-02-27 12:38
and that it's so close to being faster..
Avatar
4:53 continues to elude
Avatar
threecreepio 2026-02-27 12:38
if we could just do the luigi section without powerups, we'd be there
12:39
or if we could do it without second quest
Avatar
can you hold A+Start and pick 2 player?
12:39
And both start in minus world?
Avatar
threecreepio 2026-02-27 12:39
yeah
Avatar
gotcha
12:39
well this bowser thing is the closest we've got atm i think
12:39
but that bower doesnt seem to go up to the top of the screen anyway
12:40
im not sure why some do that
Avatar
threecreepio 2026-02-27 12:40
no i have no idea. i don't think it'd lead anywhere but it's worth figuring out what exactly is happening there.
Avatar
do you know how i can modify the enemy list in smbutil without resorting the entire list
Avatar
threecreepio 2026-02-27 12:42
i don't think you can. all you could do is look up which enemy to change in there and then search up the bytes in a hex editor
Avatar
hm i see
12:42
i want to do things like move a firebar 1 block right, or just move the long firebar up 1 slot in the spawn order
Avatar
threecreepio 2026-02-27 12:43
or adjust it in the disassembly and build a new version
12:43
it's easy to do
Avatar
or move the buzzy beetle down in the spawn order
12:43
man it's actually so crazy how many things are around that bowser
12:43
but we struggled to get this 1 beetle
12:43
and like 8 of them are green koopas lol
Avatar
threecreepio 2026-02-27 12:45
yeah it's in part ridiculous that this wasn't super easy based on the enemy data.. and crazy that it worked at all.
12:46
i do think smbutil is open source so, could probably hack out the reordering, too
Avatar
thats true, we're definitely lucky it works at all
12:46
we're even lucky that fds minus world exists or doesn't crash etc
12:46
like yeah it's hard to fill slots around some bowsers
12:46
but it easily could've just clogged before any bowsers existed
Avatar
threecreepio 2026-02-27 12:47
Yeah and that the Japanese game is on a diskette instead of cartridge
12:48
If fds minus world had been on the nes instead we’d be out of luck
Avatar
right, it wouldn't persist on reset?
Avatar
threecreepio 2026-02-27 12:49
It would just ignore the write. At best in a multicart it would kick you to another game maybe.. which would be kinda fun.
12:49
Multicart ACE
Avatar
threecreepio 2026-02-27 14:03
about a full year since i started looking at it. :)
Avatar
who is this message to?
Avatar
threecreepio 2026-02-27 14:04
Andrew
Avatar
wow you looked at this pretty early after 2j ace
Avatar
threecreepio 2026-02-27 14:05
Yeah I started looking at it pretty much immediately after we found the 2j thing. Then was complaining to him that -1 didn't work out, he suggested the vine glitch.
14:06
Which was a good suggestion which didn't lead anywhere.
Avatar
haha dude
14:06
didnt go check the literal 1 glitched world we had access to
Avatar
threecreepio 2026-02-27 14:07
Haha yeah so much can feel obvious in retrospect.
Avatar
i guess technically tennis swap would save time getting to minus world and maybe put it under 4:54? lol
Avatar
threecreepio 2026-02-27 14:08
Mmm could probably get to that world N or whatever with the glitched bowser somehow with tennis swap?
Avatar
yeah but that payload required smb3 cart swap also i think
Avatar
threecreepio 2026-02-27 14:09
ahh
Avatar
i guess if youre swapping then who cares though
Avatar
threecreepio 2026-02-27 14:09
you can do what i've suggested with any cart swapping trick
14:09
just use family basic
14:10
it's an official release and everything.
Avatar
basic like the programming language?
Avatar
threecreepio 2026-02-27 14:10
yeah
Avatar
haha, i see. Not familiar with it
Avatar
threecreepio 2026-02-27 14:12
10 FOR I=&H7D3 TO &H7DC:POKE I,0:NEXT 20 POKE &H7FF,&HA5 30 POKE &H7FD,&H16 40 DATA &HA9, &H07, &H8D, &H5F, &H07, &HA9, &H57, &H48, &HCE, &H72, &H07, &HA9, &H03, &H8D, &H5C, &H07, &H20, &H5A, &H86, &H4C, &H78, &H81 50 FOR I=0 TO 21:READ X:POKE I+&H181, X:NEXT i think is the actual basic to do what the SMB3 setup did.
14:13
basically, clear a memory 7D3-7DC, set 7FF to A5, 7FD to 16, then A9 07 8D etc at 181 onward.. then you swap.
Avatar
oh haha
14:14
nice
Avatar
threecreepio 2026-02-27 14:14
but yeah i have nothing against cart swap approaches but it doesn't feel like 'full' ACE (edited)
Avatar
wait so researching more, is the 84 slot thing for bowser only important with the current crash we're doing? Where it overwrites the byte for player state and we need mario on the ground? (edited)
14:47
like in 2j/if we have a green koopa, do you need bowser in the 84 slot?
Avatar
threecreepio 2026-02-27 15:40
it needs to be 84 in both
15:40
but for different reasons :) (edited)
15:42
https://github.com/threecreepio/smb/blob/master/smb1_fds.lst#L5892 for the SMB1 thing, it'll be running a routine for the players state from here. and 84 becomes the 5th entry in that list.. which doesn't exist, so it will instead read the two bytes after the list, $60 and $20, which will make it jump to $2060.
Contribute to threecreepio/smb development by creating an account on GitHub.
15:44
i'd need to look up exactly what 2j runs, i can check that when i get back from work
Avatar
threecreepio 2026-02-27 18:49
would have been fun to find someone to do like a new demoscene kind of thing as a payload :)
Avatar
ohh the title demo?
Avatar
threecreepio 2026-02-27 18:50
oh no i mean like, for the payload
18:50
if we show 'total control' that we can swap out the ROM
Avatar
oh like a new level to play?
18:51
it's not too late, we can do as many payloads as we want to show off. Haha
18:51
it's fun that we can just go from reset and 5 seconds later we're ace-ing (edited)
Avatar
threecreepio 2026-02-27 18:54
https://www.youtube.com/watch?v=qRdGhHEoj3o i meant like one of these things, where you make a video + soundtrack thing to play. I know Simplistic was talking about wanting this particular video, but, I feel like so many people have done that. :)
18:55
not sure what we actually need to show though
Avatar
yeah since 100th_coin already did that if it's easy to paste over we can have it as one of the fun paylaods to show off on stream. But we need the game win + something else cool + this at least
18:56
i think that would be fun
Avatar
threecreepio 2026-02-27 18:56
yeah
Avatar
it's funny we can fake people out a ton on the showcase too
18:56
it starts with minus world ending so i can say im just running it for a testrun first
18:56
and then it keeps going...
18:56
mario dies, i can pretend it desync'd
18:56
we keep going
18:56
it crashes, i can pretend it didnt work
18:57
we keep going............
18:57
lol
Avatar
threecreepio 2026-02-27 18:57
"well, premiere is cancelled i guess.. i'll just play around as luigi."
Avatar
threecreepio 2026-02-27 20:40
so this is the tas of the stopped timer setup.. but.. for whatever reason the bowser refuses to stay alive now :D done it several times and he jumps and dies. which is interesting at least.. it seems like the bowser earlier in the stage that i let live is actually triggering the death. needs 76A=1, 76C=1 and 6F6F=1A set when you get into the minus world
Avatar
threecreepio 2026-02-28 12:27
there we go :)
Avatar
threecreepio 2026-02-28 16:51
so what happens is.. the duplicated object loads in, gets an offset to which enemy slot from 0-4 the game picked for the duplicated bowser.. in this case its 8 because it overran the slots and just found the closest 0 byte. then the bowser routine wants to place the bowser enemy ID in the enemy_id list for bowser.. so it writes it into enemy_id($16) + 8, which is $1E.. $1E is the state flag of the first enemy slot, which is the earlier spawned in bowser in this case, and $2D (bowsers id) sets the defeated flag $20. so when the duplicated enemy bowser spawned in, it instantly marked the other bowser as dead which erased all the enemies. :) (edited)
Avatar
ah veryy interesting
16:58
so it can only be done when yo ualready killed an earlier bowser
Avatar
threecreepio 2026-02-28 17:04
hm no it'll overwrite some state with that, i think it could overwrite its own state.
17:04
but it would need to have covered the empty byte between the enemy flags and ids first, so, wouldn't work on the first 2 bowsers we have, and that would fill up our slots if we wanted it to be small only. (edited)
17:05
if you die at the midpoint you have more slots, not sure if we can get the bowser spawn there, but, it'd still take at least 2 glitched bowsers. so, i feel like any point where it would help us, we're already at the bowser that needs to be our actual ACE trigger.. (edited)
Avatar
threecreepio 2026-02-28 17:21
Hope this all works no matter which PPU revision and everything that you have.
Avatar
Avatar
threecreepio
if you die at the midpoint you have more slots, not sure if we can get the bowser spawn there, but, it'd still take at least 2 glitched bowsers. so, i feel like any point where it would help us, we're already at the bowser that needs to be our actual ACE trigger.. (edited)
Right. The only thing it would maaybe unlock is the infinite time version, but that is slower
17:24
regarding midway/after killing the first bowser in the stage: with fireflower you can shoot a grey cheep to keep it on screen longer, then move near the flagpole to prevent one of the glitched "flag" objects from loading. But as small I dont think you can prevent that from loading. So you get your slots more clogged up as small
Avatar
threecreepio 2026-02-28 17:28
yeah sounds about right
Avatar
threecreepio 2026-02-28 17:49
interesting that the slot after the enemy flags and enemy ids is marked 'dammy' in the source leak.
Avatar
Oh the 001C spot?
18:05
Er wait that's after the flags
Avatar
threecreepio 2026-02-28 18:08
this is for all stars so the addresses are a bit off, this is the 'enemy_flags'
Avatar
what would the route be if we could do it wihtout powerups
Avatar
threecreepio 2026-03-01 01:36
well it'd be the same, but the reason we have to do 1-1 and 1-2 again is to get powerups, otherwise you can just A+Start, right?
Avatar
hold A+Start to get back?
Avatar
threecreepio 2026-03-01 01:36
yeah
Avatar
do you have to game over for that or just reach there
Avatar
threecreepio 2026-03-01 01:37
pretty sure you can just get there, isn't that what both endings does? pretty sure i already checked this but i can do it again to be sure.
Avatar
well both quests finishes the game so i didnt know if it updates at that point. Like, it goes back to the title screen rather htan from a reset
Avatar
threecreepio 2026-03-01 01:38
yep, it goes to -1 if you A+Start after being MWE
Avatar
nice
Avatar
threecreepio 2026-03-01 01:40
that first bowser in -1 also behaves so weird, slowly climbing up the screen like that.
Avatar
right, i dont know if thats because he starts at a weird y coordinate or what
Avatar
threecreepio 2026-03-01 01:42
yeah when he's climbed all the way back around to normal bowser position he does 'recover'
Avatar
threecreepio 2026-03-01 01:45
people always say 2j is super mario but so much harder, and we found the exception.
Avatar
haha
01:46
smb1 is harder... to make cool stuff happen 😉 (edited)
01:46
holds true
Avatar
this is insane
12:23
if bowser breathed fire in minus world we would have ace in quest 1 (edited)
12:23
but they checked for exactly world 8 to breathe fire
Avatar
threecreepio 2026-03-02 12:23
Hah that.. is exactly what you’d figure for this game
Avatar
i just figured out you can despawn one of the retainer objects
12:25
and i thought it was going to be it
Avatar
threecreepio 2026-03-02 12:25
And yeah makes sense. For this setup all we need is to fill the slots, don’t have to care about what exactly anymore.
Avatar
001C filled, 1 open slot...
12:26
😐
12:26
12:26
immediately filled
12:27
but if he breathed fire i was hoping to get this thing to dsepawn
Avatar
and fast
12:30
oh hey i crashed the game without killing bowser or coming from the midway lol
12:30
this level is actually insanely close to crashing by default
12:30
it happens that when you swim at full speed this one parakoopa barely doesn't spawn
12:31
12:31
but you can let the other koopa fall in the pit wihtout scrolling the screen too far, and get the parakoopa to load instead of the retainer
Avatar
threecreepio 2026-03-02 12:44
Ah interesting, crashing in an interesting way?
Avatar
oh like the one at the staircase
12:45
that you need 31 in zero page to avoid
12:46
normally you only see it if you kill the earlier bowser or start from the midway. But i got it by despawning the retainer
Avatar
threecreepio 2026-03-02 12:46
Ah right
Avatar
this. stupid. Firebar!! Makes me most mad of all lol
12:47
if this thing spawned im pretty sure you could literally ace off that bowser right there
Avatar
threecreepio 2026-03-02 12:47
Hahaha
Avatar
like bam bam ace
12:47
two quick ones
12:47
one off long firebar, let small firebar go off screen, ace on bowser
Avatar
threecreepio 2026-03-02 12:47
Really placed both enemies we need right next to eachother, super clean
12:47
Instant ACE
Avatar
and out of order
12:47
if it was just 1...... ONE slot higher
12:47
above bowser
Avatar
threecreepio 2026-03-02 12:48
Im at a US Healthcare conference.. so. That’s fun.
Avatar
oh 😂 lol. How random
Avatar
threecreepio 2026-03-02 12:48
Yeah unexpected
12:49
It does feel like somehow it has to be possible in quest 1.. but yeah..
12:53
The problem is that first bowser kill will always put you in a ’clean’ state and just removes so many options.
Avatar
Avatar
threecreepio
there we go :)
finally watching this. At one point you just stand there for a super long time lol. Was that needed or were you typing to us on discord 😄
13:12
oh, nevermind
13:12
mine desync'd because i didnt have quest 2 active
13:12
must be it
13:16
ok nice you did exactly what i was going to try to do, get the "4" koopa enemy into slot 4
13:17
thank you for sending this over!!
13:20
im seeing a crash but not hitting ctl1 inputs
Avatar
threecreepio 2026-03-02 13:21
I think I was just typing. It should hit ctl1 after hitting bowser. I can check if i messed something up when i get back. Can you check which enemy spawns in, is it 84? Otherwise something screwed up..
Avatar
Avatar
threecreepio
I think I was just typing. It should hit ctl1 after hitting bowser. I can check if i messed something up when i get back. Can you check which enemy spawns in, is it 84? Otherwise something screwed up..
it was when you were riding the platform, but i had it desync'd because quest 2 wasn't on
13:21
so you were just standing there
Avatar
threecreepio 2026-03-02 13:21
Ahhh
13:22
I know I’ve had some with big pointless pauses
Avatar
is it SavedJoypad1Inputs that is ctl1?
Avatar
threecreepio 2026-03-02 13:22
But if it gets 84 spawned in and takes damage you can get ctl1. Oh maybe I only exported ctl1?
Avatar
SavedJoypad1Bits
Avatar
threecreepio 2026-03-02 13:22
If so it needs b+select on ctl2
13:23
It is the one at 74A
Avatar
Avatar
threecreepio
But if it gets 84 spawned in and takes damage you can get ctl1. Oh maybe I only exported ctl1?
oh yeah theres no controler 2
Avatar
threecreepio 2026-03-02 13:23
Ok then that’s the problem :)
13:23
Always forget to export with ctl2..
Avatar
oh is that how it works with taseditor
13:24
i just play with keyboard and it depends on if i have controller 2 enabled at the start of the tas or not. If not, i have to go manually add it into the file
Avatar
threecreepio 2026-03-02 13:25
Should be able to just start a new tas and ’copy current inputs’
Avatar
i just do movie -> record movie so all of thes things sound really foreign to me
Avatar
threecreepio 2026-03-02 13:27
Ahh, I open the tas editor, set it to record mode and minimize it
13:28
But you can open the fm2 in the tas editor to add it, otherwise i can fix the inputs when i get home
13:30
do i just need to add B+Select ?
Avatar
threecreepio 2026-03-02 13:30
Right, so that should work. Yeah
13:31
B+Select on ctl 2 and it shouldn’t crash until you hit bowser
13:32
What’s nice with our new setup is that we can set things up so much easier by restarting.. but of course if we found a koop setup like that it would have been faster
Avatar
post-crash it's definitely a lot more viable rta. But crash still hard
Avatar
threecreepio 2026-03-02 13:36
Oh yeah
13:36
It’d be very nice not to need the PPU
Avatar
ok i added in 2p and got it working
Avatar
threecreepio 2026-03-02 13:37
Nice
13:37
Then there’s still the issue of getting payloads to do something useful
Avatar
right
13:38
i have to focus purely on vdieo editing or i would love to mess with this
Avatar
threecreepio 2026-03-02 13:39
But I think that’d be doable, there are enemies to manipulate around there without filling the slots
13:40
But still it wouldn’t solve anything, since it still needs the initial ppu ace setup or some other unheard of way to stop the timer. We just need to get HappyLee to keep doing that flagpole thing but eh.. high enough so the timer stops.
Avatar
lol i wonder if on pal you can swim through the top of the screen
13:43
probably not
13:43
but you can through ceilings
Avatar
threecreepio 2026-03-02 13:43
Just need FDS PAL SMB1
13:44
did you say the bowser dying glitch could happen from this bowser, or no?
Avatar
threecreepio 2026-03-02 13:45
In theory, it depends on the enemy state slots at that moment. If it writes 2D into the state slot of that Bowser it would die. If it can happen.. well, it’s not easy to manipulate exact slots in -1
Avatar
i see
13:46
if you could get it to die it might be possible to do the infinite timer ace with no powerups
Avatar
threecreepio 2026-03-02 13:46
But you would need that bowser to be glitched, so I’m not sure what it would buy you
Avatar
but there is this one glitched object near the castle which i think i can only get to despawn with fire and killing a cheep cheep
13:46
to keep it on screen longer
Avatar
Avatar
threecreepio
But you would need that bowser to be glitched, so I’m not sure what it would buy you
glitched like doing the overflow glitch?
Avatar
threecreepio 2026-03-02 13:47
Yeah that’s what kills the bowser
Avatar
yeah, we would do the overflow glitch on this bowser
13:47
and skip it on the previous bowser
Avatar
threecreepio 2026-03-02 13:48
The first one will always just write to the fireball state so that won’t help :)
Avatar
oh, okay
Avatar
threecreepio 2026-03-02 13:48
I wonder if anything else can be done with the fireball+bowser state. It is a weird one.. but not noticed anything useful
Avatar
Avatar
threecreepio
so this is the tas of the stopped timer setup.. but.. for whatever reason the bowser refuses to stay alive now :D done it several times and he jumps and dies. which is interesting at least.. it seems like the bowser earlier in the stage that i let live is actually triggering the death. needs 76A=1, 76C=1 and 6F6F=1A set when you get into the minus world
i havent seen it yet. I'm going to watch this tas now
13:49
would be fun to mention
13:49
it's actually crazy we have ways to do basically everything you would need for ace, but none of them work in context
13:50
we can turn enemies around, we can stop the timer, we can kill bowser without fireballing him, we can make powerups spawn from the vine growing (?)
Avatar
threecreepio 2026-03-02 13:50
Yeah looking at the level data you’d think like, we have so much ACE potential here surely we just have to pick one
Avatar
the glitched objects clog your slots at the exact worst times
13:50
the retainer kills this path i just looked at today
13:51
if you kill bowser to get rid of all the slots, then now you dont have any glitched objects to clog things up beore the next bowser lol
13:51
then after that bowser theres a hundred things clogging up
13:51
it's crazy
Avatar
threecreepio 2026-03-02 13:51
If this level was just, not underwater, we would have been aceing a year ago
13:52
Or more realistically we’d have no way past the flagpole, but if we could get past it we would have ace..
Avatar
or even if the buzzy beetle turned the koopas around we also would be ace'ing much faster
13:53
theres so many things
Avatar
Avatar
threecreepio
Or more realistically we’d have no way past the flagpole, but if we could get past it we would have ace..
i bet you could get past it
13:54
bounce on a koopa through there or something
Avatar
what happened in that original 1 byte ace we console verified? Where it crashed if you scrolled 32px?
14:05
is that something in here changed?
Avatar
Avatar
Kosmic
what happened in that original 1 byte ace we console verified? Where it crashed if you scrolled 32px?
threecreepio 2026-03-02 14:05
Well it turned an instruction there after the BMI instead a 00 which is BRK. That sent execution to memory like $01
14:06
Which is something but then you need to reach something useful from there.. and you only have 32px to do it
14:06
I think maybe there could be something that could be done with it.. but it’d be really hard. Maybe for a TAS.
14:07
And then we don’t even have fire..
Avatar
why does the first retainerobject in the level go in slot 1 and not 0..?
14:20
man i even got the firebar into slot 4, so we could 100% get the later bowser into 84 if not for this retainerobject
14:20
Avatar
threecreepio 2026-03-02 14:22
I know I’ve checked why they spawned there but it was a while ago..
Avatar
now i need to figure out how to sleuth out the place to hex edit the enemy list here
Avatar
threecreepio 2026-03-02 14:25
Should just be enemy_flags and enemy_id, what do you want to set?
Avatar
oh i mean in the rom, i want to change the order of the enemy list
14:25
i want to move the long firebar up 1 in the list so it spawns in, as well as move the little firebar 1 block to the right. So I can show how close those are to working
Avatar
Avatar
threecreepio
Or more realistically we’d have no way past the flagpole, but if we could get past it we would have ace..
just thinking about it, yeah if the level wasn't underwater you could 100% set up some koopas down low to clip through the floor with, or even screen wrap stomp to get over the flag
14:29
i mean if the level wasn't underwater theres even a chance you could reach the later bowser...
Avatar
Avatar
Kosmic
oh i mean in the rom, i want to change the order of the enemy list
threecreepio 2026-03-02 14:31
Ah that’s also easy enough generally. Minus world can be a little tricky since you will change unrelated code as well.
Avatar
Avatar
Kosmic
just thinking about it, yeah if the level wasn't underwater you could 100% set up some koopas down low to clip through the floor with, or even screen wrap stomp to get over the flag
threecreepio 2026-03-02 14:34
Yeah there would probably be something for TAS at least.
14:35
Should check what options would have been open if it wasn’t underwater at some point. Just for fun.
14:35
But it is far to those other bowsers.
Avatar
Avatar
threecreepio
But it is far to those other bowsers.
yeah but you can run at 1.6x speed. So instead of making it to only page ~40, you should be able to make it to ~64
14:37
i guess theres the matter of keeping slots full
Avatar
threecreepio 2026-03-02 14:38
Mmm the enemies aren’t moving faster, but, you can also stomp the parakoopas to keep them around longer
Avatar
happylee style shell transportation all the way over
14:40
probably wouldnt make it lol
Avatar
threecreepio 2026-03-02 14:40
Well now I want to see that
14:41
Yeah
14:41
All the way to the bowser
Avatar
this looks slower than swimming haha
14:41
definitely slower than that platform ride
Avatar
threecreepio 2026-03-02 14:42
And the platform ride is not fast
Kosmic pinned a message to this channel. 2026-03-02 14:44
Avatar
i love that theres this idea people have combed through every line of code
17:06
like, maybe, idk? probably? This stuff isn't always that obvious even if the code was right in front of you though
17:06
it gets repeated everywhere though
17:06
and it's just fascinating
17:07
youd have to read and sit and test every situation you can think of, even if they dont make sense in the context of the game
17:07
kind of takes it being found in 2j, where there is a real situation, for it to be properly looked at in smb1. and even then everyone walked away with "well, there's nowhere"
Avatar
threecreepio 2026-03-03 17:07
what's funny is that from at least my own experience making disassemblies, the more you document, the harder it can be to find 'exploits'
17:09
because like when the code is.. L_8056: LDA $E BEQ L_8090 ASL A TAX LDA $600,X you have to really think about every last instruction and piece together what's happening in your head. then when it says like.. LoadEnemyRoutine: LDA ActiveEnemyRoutine BEQ EmptySlot ASL A TAX LDA EnemyHandlerRoutines,X you start just scanning through assuming the code is right because it reads ok
Avatar
threecreepio 2026-03-03 18:54
haha
18:54
no, it doesn't.
18:54
it has like 5
18:56
also it is funny that the underwater vine glitch puts your enemy data into a really weird state, and it's not produced anything useful.
Avatar
Avatar
threecreepio
it has like 5
i think it has 7, haha
19:01
i think i read this a while back and was like ahh, even if it worked in smb1, it wouldn't actually lead anywhere
19:01
fds version coming in sooo clutch
Avatar
Avatar
threecreepio
A:00 X:05 Y:36 S:F7 P:nvUbdiZC $9C98: AD 47 07 LDA $0747 = #$00 A:00 X:05 Y:36 S:F7 P:nvUbdiZC $9C9B: D0 43 BNE $9CE0 A:00 X:05 Y:36 S:F7 P:nvUbdiZC $9C9D: 08 PHP ;;; this is our modification A:00 X:05 Y:36 S:F6 P:nvUbdiZC $9C9E: 39 F0 11 AND $11F0,Y @ $1226 = #$00 A:00 X:05 Y:36 S:F6 P:nvUbdiZC $9CA1: C9 03 CMP #$03 worked out pretty nice and stable.. like, LDA $747 is the timercontrol, and it waits until it's zero, then does the PHP that we replaced with the luigi PPU stuff.. and then a 3 byte AND which does nothing since A is always 0. and then it's aligned with the normal instructions again and just runs through until it returns from that routine, which will to to $0F33 where '33' are the CPU flags that were set when the PHP hit. which should always be the same. (edited)
so basically, because we replaced the ldaPowerUpType with the PHP, the accumulator still holds $0747, and that's where we end up jumping to from the JSR later?
Avatar
threecreepio 2026-03-04 11:52
not exactly, the top value on the stack is currently $0F, the processor cpu flags are $33. so after PHP the stack valuse with be 33 0F, when the RTS hits it takes 2 values off the stack, and returns to the byte after whatever that value is, so $0F34
Avatar
oh I didn't realize, because of the PHP change now the next byte is also read differently as an AND?
Avatar
threecreepio 2026-03-04 11:54
yeah
11:54
then it lines up with real instructions again after that
Avatar
ah i see so it executes at 0F34 which is probably a mirror of earlier ram?
Avatar
threecreepio 2026-03-04 11:57
yeah, 0734
👍 1
Avatar
when things are a mirror, is that what open bus is
Avatar
threecreepio 2026-03-04 12:04
nah, with the address mirroring.. say you hav ea chip that takes 3 address lines like this.. but in your program you have a 4 bit number that you're using to address it.. you take the lowest 3 bits andput them in A0, A1 and A2 and ignore the highest bit. now they're effectively mirrored because 0001 will be the same as 1001 since that bit goes nowhere.
Avatar
oh! I see
12:05
thats a great explanation, thank you
Avatar
threecreepio 2026-03-04 12:09
and what's happening with the ppu bus is that you're reading from the device when it's not 'expecting' it, so what you're reading is going to be essentially undefined, often ends up being the last value written to it, but apparently not always. i can't say i'm an expert on open bus. :)
Avatar
okay no worries! I know it's a hard question and 100th coin has even explained it to me but i couldn't remember. And google wasn't helping me fully understand
Avatar
threecreepio 2026-03-04 12:10
essentially all i know about the open bus'es is that i've read https://www.nesdev.org/wiki/Open_bus_behavior
When the CPU attempts to read from an address which has no devices active, the result is open bus behavior. The value that results from a read in such a region is undefined, but on specific hardware predictable results may appear. Clone versions of the hardware, and flash cartridges like the PowerPak or Everdrive may differ in their open bus beh...
12:10
yeah he's probably better at explaining that. :)
Avatar
which was the code change that made all of the holes break? And have glitchy vines floating above them
Avatar
threecreepio 2026-03-04 18:50
oh.. ehm i can check
18:52
7B : Write $50 to address $7B85
18:52
9B : Write $00 to address $9BA5 is also kinda fun when you hit coin blocks, think its this one
Avatar
why are there two of them?
Avatar
threecreepio 2026-03-04 18:55
oh no the first one is the hole one
18:55
the second one makes it rain coins
Avatar
oh okay, i see. Hard to parse discord formatting
18:56
i think this hole one is a reall nice one as an example of making a 1 byte change thats obvious
18:56
let me see this coin one
18:58
lol thats crazy
Avatar
threecreepio 2026-03-04 18:59
haha
Avatar
well you know whats funny
Avatar
threecreepio 2026-03-04 18:59
yeah the hole is good, and the thing that rewrites the level data
Avatar
i used to be like "Man, look at this, we can ACE with a 1 byte change to the game"
18:59
regarding turning the koopa around underwater
18:59
but then tahts exactly what we did haha
18:59
i think im going to incoorporate that
Avatar
threecreepio 2026-03-04 18:59
and yet we couldn't ACE turning that koop around
Avatar
right 😂
19:00
would've been slower. But, it would've been faster than infinite time!
19:00
Hey now theres a question
19:00
do any of our 1 byte changes affect the minus world? haha
Avatar
threecreepio 2026-03-04 19:01
ahh haha.. ehm, they do change some level data, don't think they change 1-3. and i'd need to remember exactly what memory range that enemy data was from. somewhere around retainer object handling..
Avatar
do you know the data range that minus world reads from?
19:02
to generate the level
Avatar
threecreepio 2026-03-04 19:03
well the enemy data is somewhere around C8..-something. it's what's in .. E9-EA when the level loads
Avatar
ok seems like thes would be the closest but they are not in C8 range
Avatar
threecreepio 2026-03-04 19:06
dang
19:06
and the level data is at 86xx, so, also not there
Avatar
9 - long firebar A - "86" B - "209" C - "166" / upward lift D - red koopa E - "181" glitchy spring object F - "15" glitchy red parakoopa G - "16" glitchy green parakoopa H - red cheep I - glitchy falling platform that throws a hammer J - "15" glitchy red parakoopa K - "170" glitchy surf platform L - "181" glitchy spring object M - firework N - crash (jump to ram :) O - bowser P - crash (jump to ram??) Q - podoboo R - "166" / upward lift S - red koopa T - "181" glitchy spring object U - firework V - crash (jump to ram?) W - buzzy beetle X - crash (jump to ram?) Y - crash (jump to ram?) Z - crash (jump to ram?) blank / minus world - bowser other color tile - "208", nothing?
Avatar
threecreepio 2026-03-05 01:04
makes sense
Avatar
i was like oh actually we're lucky, if it was Z then we would've crashed!
01:04
But, actually we'd just ace probably lol
Avatar
threecreepio 2026-03-05 01:05
i think Z didnt seem to jump to RAM, but yeah Y and X do
Avatar
ah, then good thing it's not Z
Avatar
threecreepio 2026-03-05 01:05
oh it could be different on NES of course
Avatar
yeah this is on FDS
Avatar
threecreepio 2026-03-05 01:05
ah ok
Avatar
first i was testing on kaname 2j and then i thought better of it. Lol
01:06
not sure which of these glitchy things would actually despawn when going off screen
Avatar
threecreepio 2026-03-05 01:06
firework sounds fun
Avatar
but yeah our chances of something good were high. But also chances of something bad
01:06
firework would've been perfect
01:06
just hangs around a few seconds then goes off
01:06
and disappears
Avatar
threecreepio 2026-03-05 01:06
its kinda like, it would need to be better, but if it was just like world Y, then we wouldn't have been trying because it'd be well known that SMB crashes to RAM in minus world by just killing bowser
Avatar
right, ace forever ago
Avatar
threecreepio 2026-03-05 01:07
we live in the timeline where we somehow threaded the needle of it being seemingly impossible but apparently, not fully.
💯 1
Avatar
if you do a perfect setup of ACE on 2j on switch online, will it still throw the error and quit out?
Avatar
threecreepio 2026-03-05 01:07
it should work on switch
Avatar
ok nice
Avatar
threecreepio 2026-03-05 01:08
i dont know if they have any check for like "anything that runs in RAM is a crash" but i doubt it
Avatar
i was thinking how cool ace in smb1 is because it's ported so many places. Except... not fds version
Avatar
threecreepio 2026-03-05 01:08
yeah true.. good minus world is only in one place
Avatar
ohh right, because it was built it and he was like uhh it's intended
01:35
gonna make this payload for the vid. Lol
01:37
hmm hard to make 3 byte instructions though, which i think I need to be able to write to this area of memory?
Avatar
threecreepio 2026-03-05 01:39
it takes some work at least, but should be doable. worst case we need an arbitrary TC payload like the thing i have in 2j. which should be fine to make, takes a little time to set up.
Avatar
hm dang, was trying to do something simple and easy, but that is trickier
01:41
with thel imited time
Avatar
threecreepio 2026-03-05 01:43
true. i can try to find a good TC payload tomorrow.. i dont think it'd be that hard. i already have the 2j code for it, and the smb1 setup should be easier since it doesn't need to care about taking damage.
Avatar
that would be cool. Would love to show loading into the last room of 8-4 as well
Avatar
threecreepio 2026-03-05 01:43
yeah that shouldn't be too bad
Avatar
have just like, a little bit of time before bed to tinker around with this stuff, during the day im grinding the video
Avatar
threecreepio 2026-03-05 01:44
ah nice, going well?
Avatar
Avatar
threecreepio
hm i don't know.. maybe to not have the chance of despawning the retainer.. but then the retainer could just force-write itself like the starflag
i think they also run the delete-everything function when you grab the axe anyway so... lol why does it do this
Avatar
seems like the KillAllEnemies function is used when grabbing the axe, killing bowser, or looping a room on maze castles. But maze loops or grabbing the axe do seem to delete the powerup slot, whereas killing bowser doesn't...?
12:44
the function definitely looks like it's supposed to start at slot 04, not sure why it deletes the powerup on maze triggers and stuff
Avatar
threecreepio 2026-03-05 14:19
and yeah they really went overboard with killing everything on the bowser death and the bridge collapse..
Avatar
threecreepio 2026-03-05 16:31
Yeah the joypad thing didn’t do much good
16:32
Im just really glad we didn’t have to do the 32px scroll thing
Avatar
when you said this was it becasue you missed putting it in the list initially?
Avatar
Avatar
threecreepio
Im just really glad we didn’t have to do the 32px scroll thing
truuue
Avatar
threecreepio 2026-03-05 16:34
think it was just related to this
16:35
when i said, oh none of these things look like they'll make a significant difference, and then, well the timer could be interesting
Avatar
oh so did you already know about the timer at that point, just didnt think of it? (edited)
Avatar
threecreepio 2026-03-05 16:37
yeah, i saw it and just thought, well the 'digits math routine' is used to convert things to visible formats for like the score. which felt useless.
16:37
before i remembered that the timer uses that as the actual timer value
16:37
awesome
Avatar
threecreepio 2026-03-05 16:38
and it would be super useful..
16:38
if you could get back to -1 :)
Avatar
yeah it's actually just an insane part of the story
16:38
stopped by 1 thing at every lead
Avatar
threecreepio 2026-03-05 16:38
oh yeah so many potential ACEs
Avatar
curious what this one does
16:48
how is the first line 2 byte opcode but the second one is 3?
16:48
Avatar
threecreepio 2026-03-05 16:53
anything from $00-$FF can be done in 2 bytes, zeropage operations
16:54
and yeah i haven't tested it,you can. but it should just end up just messing a little with the ppu
16:54
no idea if that crashes or anything
Avatar
oh wow i didnt expect block_pageloc2 to be so far from the first one
Avatar
threecreepio 2026-03-05 16:55
9d9e i think at least did something more fun
16:55
thats the one that messed with the areadata iirc
Avatar
this one makes all block chunks disappear when they go above the screen, lol
Avatar
threecreepio 2026-03-05 16:56
ah useful
Avatar
woah, 9D9E is crazy
16:57
Avatar
threecreepio 2026-03-05 16:57
haha yeah it can really mess things up
16:57
i think it moves the areadata pointers based on your Y position
Avatar
just spawn an axe to win lol
Avatar
threecreepio 2026-03-05 16:58
ay nice! slap that in world 8 and we don't even need a second ace
16:59
problem is the blocks kinda suck in 8-1 :)
Avatar
this is procedurally generated smb1 lol
Avatar
threecreepio 2026-03-05 16:59
i think this was the one you were going to do a new glitched worlds stream on? :)
Avatar
yeah for sure gotta do that lol
Avatar
threecreepio 2026-03-05 16:59
and legitimately possible to reach in game!
Avatar
right!
Avatar
threecreepio 2026-03-05 17:00
might still want a code or hacked rom to enable it..
Avatar
ill have to have a real tas make it happen when i do it
17:00
oh true
Avatar
yeah
17:03
wow, i want to do a stream of trying to beat the game with CECE 5D
Avatar
threecreepio 2026-03-05 17:04
hmm what did that one do?
Avatar
totally messes with your ypos
Avatar
threecreepio 2026-03-05 17:04
ohhh yeah
17:04
that one was annoying
Avatar
these music corruption ones, ive heard this exact sort of thing before. From ACE fails or something
17:09
17:10
i guess once it gets off it just starts reading all the music data until it gets back on track or something
Avatar
threecreepio 2026-03-05 17:10
ahh haven't tried the music things at all
Avatar
any idea what the bowserflameenv data one does? Make them come at a slightly different timing?
Avatar
threecreepio 2026-03-05 17:11
should just be the sound effects
17:12
that was a beautiful clip
Avatar
yeah it will be good. Just an insane amount of work for me in short time
17:17
if you end up buildilng that total control payload i'd love to show off warping to 8-4 last room
Avatar
threecreepio 2026-03-05 17:17
yeah i can do that. i'm pretty sure it'll be easier to set up in this than it was in 2j
Avatar
man, im trying to take damage from a hammer bro after the flagpole in minus world but it's just not working
18:02
this is definitely a thing though?? why cant i take damage from it lol
18:03
Avatar
threecreepio 2026-03-05 18:15
did you check with the hitbox script?
Avatar
oh haha..
Avatar
threecreepio 2026-03-05 18:42
yeah :)
18:42
they love doing that when they throw hammers to the right, im sure there's a reason
Avatar
hmm ok i think maybe if i break the castle bricks then i can be further to the left and get hit by one thrown left
18:45
oh you cant break them underwater rofl
Avatar
threecreepio 2026-03-05 18:45
thats amazing
Avatar
cant really be further to the left than this then
18:46
the screen doesnt scroll until you hit the ground
Avatar
threecreepio 2026-03-05 18:48
yeah..
18:48
i dont know if they never get hitboxes when thrown to the right
Avatar
oh yeah, i know they usually dont hit you when coming from bowser, when youre standing right by the axe (like waiting to do small fire)
18:48
i feel like ive MAYBE been hit before...
18:48
being too confident it wouldnt
18:48
not sure though
18:49
that is weird haha
18:49
er wait, they definitely do sometimes get them because
18:49
well, 5-2 vine glitch
18:49
and i also tested this with hacks
18:49
thats why i was sure it could work
18:49
just running into the pipe in 1-1 and 5 hammer bros throwing at me
Avatar
threecreepio 2026-03-05 18:50
ah true
Avatar
Do you know which one of the byte changes made that buzzy beetle messed up? Oh, was that just the 32px one
Avatar
threecreepio 2026-03-05 21:51
hm which one?
21:52
ah this?
21:52
yeah that was the 32px
Avatar
threecreepio 2026-03-08 01:17
made my total control thing mostly work with smb1. :) you can definitely tell which one is the bowser pipe! (edited)
Avatar
this bowser lol
Avatar
Avatar
Kosmic
this bowser lol
threecreepio 2026-03-08 03:06
that bowser will kill you too, hard to dodge
Avatar
right lol
03:07
can you trigger mario entering a pipe without going over to that pipe
03:07
like just put him in pipe entering mode
Avatar
threecreepio 2026-03-08 03:07
yeah should be able to
Avatar
what made you choose to appear 1 page over, is that so bowser/the axe would spawn?
Avatar
threecreepio 2026-03-08 03:09
yeah bowser doesnt spawn if you go 1 farther right
Avatar
makes sense
Avatar
threecreepio 2026-03-08 03:10
and that'd be a bit anticlimactic after that first bowser fight at the pipe
Avatar
haha
Avatar
Avatar
threecreepio
made my total control thing mostly work with smb1. :) you can definitely tell which one is the bowser pipe! (edited)
why does this happen 😂
Avatar
threecreepio 2026-03-08 03:12
i have no idea why its screen wrapping like that.. i think maybe something just overwrote its speed values. there's a lot of random writes going on from just executing in ram like that. :)
Avatar
why is there the big pause where nothing is happening, beforei t recovers
Avatar
threecreepio 2026-03-08 03:30
ehm well there's the segment from frame 1486 - 1787, writing like 21 bytes.. so like 14 frames per byte roughly. that enters: : jsr FDSBIOS_VINTWAIT jsr FDSBIOS_READPADS ldx TRAMP_INDEX lda READPADS_CTL1 sta EXEC_LOCATION,x inc TRAMP_INDEX bpl :- jmp EXEC_LOCATION which is just a loop that waits for a frame, reads the controller, writes its value to ram, and does that 127 times, regardless of the size of the actual code to load.. then it jumps to where it stored it. the code that writes in is the actual payload: lda #7 sta $075f lda #3 sta $075c lda #$65 sta $0750 lda #17 sta $0751 lda #0 sta $301 sta $7b1 sta $F5 sta $F6 dec $14 lda #$80 sta $2000 jmp $605C that is "easy" to modify in that the controller inputs can be changed to whatever it is you want to enter
Avatar
i mean right at the end. So i guess thats it running the payload after its all set up
Avatar
threecreepio 2026-03-08 03:32
like this part?
Avatar
yeah where the inputs freeze as well
Avatar
threecreepio 2026-03-08 03:33
ahh
Avatar
~1835 - 1900
Avatar
threecreepio 2026-03-08 03:33
thats because i have it set to always read 127 bytes, but my payload isnt 127 bytes.
Avatar
ohh lol
Avatar
threecreepio 2026-03-08 03:33
its already really hard to find any space to write the code we need in zeropage without the game crashing, so :) mostly constrained by that
Avatar
i think this would be the ultimate showcase. Connect smb1 to this tas https://www.youtube.com/watch?v=zIHTMjlnW90
Avatar
threecreepio 2026-03-08 03:36
have 2j load in smb1 in second quest, play the ace from there, and then load back into 2j.
03:36
do you know if the tas replay thing can handle multiple inputs per frame?
Avatar
it can!
03:36
this tas does subframe inputs
Avatar
threecreepio 2026-03-08 03:36
oh nice
03:36
oh so it does
03:36
didnt notice how fast it was
03:37
it is very fun
Avatar
Avatar
threecreepio
have 2j load in smb1 in second quest, play the ace from there, and then load back into 2j.
is there a technical limitation that prevents us from starting with smb1? doing it all inside smb1
Avatar
threecreepio 2026-03-08 03:37
oh no we can start in smb1
Avatar
oh ok nice
03:38
funny that theyre all on fds. Is that because of IRQ stuff do you think? That the fds version is what works for all these
03:38
smb1 -> 2j -> zelda -> castlevania -> more Is such an awesome chain of aceception
Avatar
threecreepio 2026-03-08 03:39
well if you're replacing the game, you'd need FDS to have PRG-RAM at least
Avatar
like if we showed it off, it'd be like wooah you programmed 2j in here, thats crazy. But the next one is zelda which will blow some people's minds. Ofc we understand that we can do whatever, but yeah
Avatar
threecreepio 2026-03-08 03:39
but yeah aside from that, i guess, zelda and cv i think use the name entry?
03:40
oh yeah it's a good demo
Avatar
not sure about cv. I believe you have to set it up first by dying 80 times or something silly
Avatar
threecreepio 2026-03-08 03:40
better than bad apple :)
03:41
ohh right yeah.. i remember he used my everdrive thing that lets you ram dump original games so he could track progress.
Avatar
oh, i wonder if that was an old setup. The ace WR starts from poweron
Avatar
threecreepio 2026-03-08 03:41
i think it's saved to disk how many times you've died
03:42
its like if you needed 2j title stars for payload
Avatar
threecreepio 2026-03-08 03:42
yeah and i think they track it but dont show it anywhere or something
03:43
but the game knows
Avatar
are you able to do 127 bytes in a row and then keep writing more?
Avatar
threecreepio 2026-03-08 03:45
well i could step it up to 256
03:46
and yeah of course i can do more
Avatar
i just wondered how it worked exactly
Avatar
threecreepio 2026-03-08 03:46
like that volleyball thing is a lot more
Avatar
you can do 3 byte opcodes i assume
Avatar
threecreepio 2026-03-08 03:46
yeah
03:46
this lets you do whatever you want. its like a 3 stage payload thing, and i could fit the second stage in 127 bytes so that's what i went with
Avatar
the warpzone should be a super easy payload if i can literally just like, lda -> #imm // sta -> $address
Avatar
threecreepio 2026-03-08 03:47
.res EXEC_LOCATION-*,$00 .org EXEC_LOCATION+1 lda #0 tay sta PPU_CTRL_REG1 sta PPU_CTRL_REG2 sta SND_MASTERCTRL_REG sta $10 sta $11 ;; copy $400-$7FF lda #4 sta EXEC_SRC_HI lda #8 sta EXEC_END jsr ramcpy ; copy PRG lda #$60 sta EXEC_SRC_HI lda #$E0 sta EXEC_END jsr ramcpy ; copy PPU lda #0 sta EXEC_SRC_HI lda #$20 sta EXEC_END : jsr nextframe lda EXEC_SRC_HI sta PPU_ADDRESS lda EXEC_SRC_LO sta PPU_ADDRESS lda READPADS_CTL1 sta PPU_DATA lda READPADS_CTL2 sta PPU_DATA jsr advance bcc :- jmp ($fffc) ramcpy: : jsr nextframe lda READPADS_CTL1 sta (EXEC_SRC_LO),y iny lda READPADS_CTL2 sta (EXEC_SRC_LO),y dey jsr advance bcc :- rts nextframe: jsr FDSBIOS_VINTWAIT jmp FDSBIOS_READPADS advance: clc inc EXEC_SRC_LO inc EXEC_SRC_LO bne :+ inc EXEC_SRC_HI lda EXEC_SRC_HI cmp EXEC_END : rts .res (EXEC_LOCATION+$80)-*,$EA this is how the full loads word, so, to do multiple inputs per frame the only difference is removing 'jsr FDSBIOS_VINTWAIT'
03:49
i think for the warpzone what you'd do is.. ldx #0 : lda Message,x sta WarpzoneMessageLocation,x inx cpx #MessageEnd-Message bne :- : jmp :- Message: .byte "SUBSCRIBE TO KOSMIC" MessageEnd: then you could let it run, reset after and it should stay swapped out. (edited)
Avatar
oh, hmm much more sophisticated
Avatar
threecreepio 2026-03-08 03:52
yeah i mean either one works.. doing it with ldas would take.. 5 bytes per character, 95 bytes, so you'd be fine
Avatar
yeah just for the sake of ease
03:52
but it seems like you have a good system of just writing assembly and then translating that into bytes / inputs
Avatar
threecreepio 2026-03-08 03:53
yeah i mean for me thats easier, i can just run a script and get the inputs. otherwise you have to translate it into the inputs yourself.. which, isnt hard.
Avatar
threecreepio 2026-03-08 03:56
03:59
ubscribe!
😂 1
04:01
ay
04:02
Avatar
threecreepio 2026-03-09 15:15
yeah it's funny i wasn't expecting the outcome we went for to be modifying the PRG, even though i knew that the SMB2J ACE if you screw it up sometimes overwrites parts of PRG.. and of course my total control example rewrites all of PRG.
Avatar
Avatar
threecreepio
yeah it's funny i wasn't expecting the outcome we went for to be modifying the PRG, even though i knew that the SMB2J ACE if you screw it up sometimes overwrites parts of PRG.. and of course my total control example rewrites all of PRG.
oh, i see wow, that seems obvious but for some reason i didnt undersatnd that's how those full game ace's worked
15:19
i was just like oh it's a disk, we've got space
15:19
didnt think long enough about it
Avatar
threecreepio 2026-03-09 15:20
yeah it wouldn't have worked in 2J of course because when you reset in 8-4 it reloads from disk iirc?
Avatar
oh yeah to load a different file (edited)
Avatar
threecreepio 2026-03-09 15:21
yeah so this is an SMB1-specific approach. :) With 2J you'd have to break the file reload function too.
Avatar
I assume you have a script which will convert a full game's prg into inputs?
Avatar
threecreepio 2026-03-09 15:22
yeah. it needs a little cleanup, but https://github.com/threecreepio/smb2j-ace-tc
"Total Control" example in SMB2J ACE. Contribute to threecreepio/smb2j-ace-tc development by creating an account on GitHub.
15:22
that one is 2j only of course. i needed to adjust it for SMB1.
Avatar
are there any restrictions on your total control thing? Like do you need to be careful about the payload in any way?
Avatar
threecreepio 2026-03-10 12:21
nah as soon as it's in the mode where i'm entering the real payload everything else is stopped. so it's just getting into that state that takes some work.
Avatar
in your payload it hits this spot near the end where there stops being p2 inputs. What's the reason for that?
13:16
I'm trying to just add in a couple bytes to the end of it but didnt see what i expect to happen
Avatar
threecreepio 2026-03-10 13:20
there's 3 segments to it, one of them is using the ACE where we can only execute a single instruction per frame.. that part shifts bits until an area of memory matches what i want and then jumps to that location.. that code then reads 128 bytes from controller 1 inputs and writes them to a different memory location. when it's done it jumps to execute those instructions.
13:20
so the area where it's just the first controller writing inputs it should be writing the actual payload to $301 in memory
Avatar
ah, gotcha
13:21
so if i want to add something i add it to the end of the 2 player part right
Avatar
threecreepio 2026-03-10 13:21
i found something that will maaaaybe be useful for the game ending payload. hopefully.
13:22
if i add something to the 2P section i guess i also need to add something to the 1P section?
Avatar
threecreepio 2026-03-10 13:23
like you want to change the part where it's inputting on both controllers?
Avatar
i just want to add a few bytes to the payload, however taht works
Avatar
threecreepio 2026-03-10 13:25
ah ok, well the best spot to change is where there's only P1 inputs
13:26
you just enter one byte of the code you want to run per frame as ctl1 inputs, and can watch $301 to see that it's getting written in as you want
Avatar
just add my bytes in right before the L U SBA starts?
Avatar
threecreepio 2026-03-10 13:28
on the line before before SB, that's the RTS
Avatar
threecreepio 2026-03-10 14:39
another thing i haven't wanted to really go into is that we could also do indirect jumps to try to change the values we need.
14:41
which is a large possible space of things to try and they would probably not work.
Avatar
right i can imagine
14:43
with this moving shell/mario xpos too it's like
14:43
buncha random addresses
Avatar
threecreepio 2026-03-10 15:02
aw was just 4 bytes away from a great idea (edited)
15:02
not sure if it would have worked
Avatar
threecreepio 2026-03-10 20:00
55.01 KB
Avatar
threecreepio 2026-03-10 21:01
or this
55.17 KB
Avatar
threecreepio 2026-03-10 21:59
optimized the starting movement a bit. :)
Avatar
classic 378 IGT 8-4
Avatar
threecreepio 2026-03-11 12:13
Im going to submit it as my IL
Avatar
haha, nice. What was wrong with the way I was trying to do it? How does this 2nd one work, why did you have to go to the earlier pipe instead of 1 page forward?
Avatar
threecreepio 2026-03-11 12:15
Oh it can I just figured it was a little nicer looking at the pipe. But I can change it.
Avatar
oh gothca. I actually like dropping out of the air, it's more obvious like "we can do whatever we want with ACE" and doesn't look like it could just be spliced or something haha
Avatar
threecreepio 2026-03-11 12:17
lda #7 sta WorldNumber lda #3 sta LevelNumber lda #$65 sta AreaPointer lda #16 sta EntrancePage lda #0 sta VRAM_Buffer1 sta MusicData sta MusicData+1 lda #$80 dec $14 ; disable powerup sta PPU_CTRL_REG1 ldy #2 ; side entry pipe jsr $9218 jmp $605C is what i coded up for it anyway, could be maybe that you needed to put it somewhere else in the inputs
12:17
i can definitely change it!
Avatar
oh I didn't jump to endless loop. Maybe that would've worked
12:20
or, maybe yours already did that and i put my code after the jump. Lol
Avatar
threecreepio 2026-03-11 12:21
ahh yeah it will crash if you don't, since the RTI later expects to go back to a safe spot, otherwise it'll return to RAM :)
Avatar
it didnt crash it seemed like it didnt do anything
Avatar
threecreepio 2026-03-11 12:22
thankfully i can just change the code, run make and i get the new tas file :)
Avatar
thats really nice, yeah i was only doing a few instructions so i did it manually but i should try your script
Avatar
threecreepio 2026-03-11 12:25
mmm i could send it, could probably also maybe make it a little easier to work with..
Avatar
haha, thats the classic
Avatar
threecreepio 2026-03-11 12:33
yeah always something. it's not bad as is, but you do need make, node.js and cc65 for it
Avatar
threecreepio 2026-03-11 12:57
54.06 KB
Avatar
I didn't realize, when you spawn the flag/power/whatever glitched object thats past the ACE bowser, just.. nothing will ever spawn again? Why?
Avatar
threecreepio 2026-03-11 19:54
the powerup object always expects to be the final slot, so it just changes the load offset up to 5 and doesn't ever restore it. so none of the slots after it can run. :)
Avatar
threecreepio 2026-03-11 20:32
this bit
Avatar
Avatar
threecreepio
the powerup object always expects to be the final slot, so it just changes the load offset up to 5 and doesn't ever restore it. so none of the slots after it can run. :)
ohh, wow okay... interesting
11:56
thanks 🙂
Avatar
threecreepio 2026-03-12 11:58
i'd say maybe we could try to adjust the powerup slot to keep getting spawns, but, probably can't and even if we could we're already out of time, so
Avatar
Avatar
threecreepio
Click to see attachment 🖼️
why is mario swimming lol 😭
Avatar
Avatar
Kosmic
why is mario swimming lol 😭
threecreepio 2026-03-12 11:58
You wanted it obvious that it's not a splice. :) Well mario doesn't usually swim in 8-4.
11:59
Not in that room, anyway.
Avatar
nah i just said i liked dropping out of the air more because coming from the pipe looks basically the same as a splice haha
Avatar
threecreepio 2026-03-12 12:00
fair. :)
Avatar
that is funny though. Maybe ill use it
12:01
"we can go straight to 8-4 if we wanted instead.... And make mario swim if we want too!"
Avatar
threecreepio 2026-03-12 12:02
yeah can definitely disable the swimming
Avatar
with running speed it's kinda fun
12:03
Avatar
Avatar
Kosmic
Click to see attachment 🖼️
threecreepio 2026-03-12 12:03
uh oh
Avatar
takin a dip
Avatar
can get this beautiful setup off of spawning the vine. So in our infinite time situation, we wouldn't need powerups.... just a vine 😂 and of course, we can't set that up, unless you could push Button B and send Mario to world 5 and Luigi to Minus World
14:42
or in quest 1 you of course can also set this up, and then you can even reach the page where the later bowser would spawn- but not while keeping object slots free from the nonsense
Avatar
threecreepio 2026-03-13 14:43
haha yeah i know, one of the three koops getting turned around on the castle block.. so very annoying. :)
Avatar
i didnt know whether you could get the overflow glitch off that bowser past the castle, but you can (even powerupless) with careful despawning of koopa/spawning of buzzy
14:46
if you could get the invisible koopa going at 24 speed i think you could make it
14:46
in quest 1
14:46
i made it like 7 pages farther than i needed to, swimming at full speed
Avatar
threecreepio 2026-03-13 14:46
after killing the earlier bowser?
Avatar
i didnt kill him, i was smallm ario
Avatar
threecreepio 2026-03-13 14:46
ah gotcha
14:46
but yeah should still be enough time i guess
14:47
if something would actually move right at that speed
Avatar
you might have to be really slow and bring these (quest 1) beetle and koopa with you + the "4" koopa in order to get past the powerup spawn though
14:47
so that might eat up all the time
14:48
hmm maybe not
Avatar
threecreepio 2026-03-13 14:48
dont remember what i used in the infinite time tas i sent you, but, feel like i only have 2 enemies. it was slow though.
Avatar
oh wow, this works out kinda perfectly
14:51
those lift (surfing) go at 16 speed i assume?
Avatar
threecreepio 2026-03-13 14:52
yeah if thats.. what the 04 moves at when you spawn it into the dying hammer bro slot. a bit faster than normal enemies move speeds.
Avatar
bullet bill moves at 24 speed 🙃 if only
14:54
we'd have ace in quest 1, and it'd be even slower than what we currently do! Lol
Avatar
threecreepio 2026-03-13 14:55
yeah.. just gotta turn it around.. how hard can that be
14:55
haha
14:55
and of course the vine glitch in 2-2 can give you powerups.
Avatar
would that actually help
Avatar
threecreepio 2026-03-13 14:58
well at least if we had the vine glitch and then got up to fire, we'd be able to do something more
Avatar
what would we be able to do?
Avatar
threecreepio 2026-03-13 15:00
the powerup wouldn't be blocking more spawns, we could snipe some enemies to affect spawns a bit maybe. being small only is at least a disadvantage.. if we could actually get ace out of it i don' t know.
Avatar
oh hmm despawning that glitch powerup. Interesting
Avatar
threecreepio 2026-03-13 15:01
say it had spawned in like a normal powerup instead, it may not help enough, but it would change things a bit.
Avatar
i think it woudlnt really change anything. But it would let you fireball hte parakoopa at the end so you wouldnt have to ppu ace
Avatar
threecreepio 2026-03-13 15:02
sure
15:02
or if there wasn't an empty byte between the ids and the state flags
Avatar
that would be crazy haha
Avatar
threecreepio 2026-03-13 15:03
then we should be able to kill a bowser as small mario, if we get to one.
Avatar
probably would've caught it in 2j testing
Avatar
threecreepio 2026-03-13 15:03
well there could still be an empty byte between the flags and ids
Avatar
oh wait you mean that
Avatar
threecreepio 2026-03-13 15:03
yeah they may well have caught that anyway
15:04
mostly it would have killed the first enemy with state 0
Avatar
again no fire smh
15:21
yeah
15:21
let me try walking the glitch koopa with fireflower to kill the hammer bro
15:28
man, 1 single fireball
15:28
we just need to get this glitch koopa moving at 10 speed and we're good
15:29
if you could spawn from the midway with powerups you 100% officially could ace right here
15:31
well. Bowser isn't in slot 4. Would have to check on that
Avatar
well with 1 single fireball i made it to bowser with giving myself 11 extra seconds on the clock
15:57
and the bowser in slot 4
15:57
had to waste some extra time bringing the blooper at the start farther to the right to do that. But if you had different rng where the blooper just runs away or whatever, that should easily do it
15:57
plus i clipped through the flagpole instead of swimming straight over. I'm sure it's possible
Avatar
when you get to bowser but with like 82 object instead of 84, and the game starts chugging, what exactly is happening there?
Avatar
threecreepio 2026-03-16 13:54
13:57
i don't recall exactly what it is that it does, been some months since i checked.. but i can test it out if you haven't already. iirc it's when the state gets written to the bowser object that it starts kinda wigging out, lagging every other frame?
Avatar
threecreepio 2026-03-18 19:21
yeah yeah i get that. and i'll read it, should be fun. when do you plan to start recording it?
Avatar
just realized if this guy were a "Green koopa (stopped)" instead of a green parakoopa (stopped) we would have ace in quest 1
18:21
or if any of the parakoopas or enemies were that 04 object at any point
18:21
except the one that comes right after bowser. Lol
Avatar
threecreepio 2026-03-19 18:23
Hm would we? They’d still despawn after the first bowser?
Avatar
but we could keep an extra slot free at bowser, and not kill him
18:24
like if literally any enemy could move to the right ANYWHERE before the 2nd bowser we would win
18:24
because if it is before the first bowser, we get an extra slot, and we don't kill bowser
18:25
if it's after the 1st bowser we just have enough at the 2nd bowser
18:25
like 1 single blooper, rightward moving platform, anything anywhere haha
18:28
in case you dont understand what i mean: slots at 1st bowser would be like 0: retainer 1: flag 2: firebar 3: bowser 4: glitch koopa or whatever 5: star flag then we make firebar and glitch koopa go off screen 0: retainer 1: flag 2: retainer 3: bowser 4: 5: star flag
Avatar
threecreepio 2026-03-19 18:45
sorry been at an afterwork so my mental capacity is a little shot at the moment. :) (edited)
Avatar
oh you're totally good man!
Avatar
threecreepio 2026-03-25 10:00
by the way i've checked with everyone just to be sure it's alright with them, i downloaded the chat log from the group chat and figured we could like just attach/link it on tasvideos or something to preserve it since it's kinda interesting history of how things happened. figured there's nothing private in there but let me know if you want to go through and edit/remove anything, or if you don't want to be included in it. :) (edited)
Avatar
threecreepio 2026-03-25 14:15
haha.. yeah would have maybe made sense around the initial 2 week delay, i guess, now it feels kinda pointless at least.
Avatar
threecreepio 2026-03-25 17:26
i added the scrollhandler as another failed thing we tried to my section, won't add the infinite timer though, but it would be fun to have it in there since that was a rollercoaster too.
Avatar
I'll be sure to add it 🙂
Avatar
threecreepio 2026-03-26 02:37
one thing that could be worth mentioning with the infinite timer is noting that its like, still not far off from working either. (edited)
Avatar
Avatar
Kosmic
Click to see attachment 🖼️
threecreepio 2026-03-26 02:38
that is eh, not beautiful.
Avatar
it got messed up from the regular game end payload the first time around
02:39
i ran the ol simplistic one though, it still made these weird graphics.... so much inconsistent behavior with this
Avatar
threecreepio 2026-03-26 02:39
should probably update my script to use the subneshawk thing so that transition is faster. then it could also just redraw the entire CHR
02:42
the infinite timer uses these enemy floateynumber positions in memory.. 0BA16 SetupFloateyNumber: 0BA16 9D 10 01 sta FloateyNum_Control,x ;set number of points control for floatey numbers 0BA19 A9 30 lda #$30 0BA1B 9D 2C 01 sta FloateyNum_Timer,x ;set timer for floatey numbers 0BA1E B5 CF lda Enemy_Y_Position,x 0BA20 9D 1E 01 sta FloateyNum_Y_Pos,x ;set vertical coordinate 0BA23 AD AE 03 lda Enemy_Rel_XPos 0BA26 9D 17 01 sta FloateyNum_X_Pos,x ;set horizontal coordinate and leave 0BA29 60 ExSFN: rts 0BA2A which almost works except - there's an empty padding byte between the X and Y pos. if there wasn't we could probably get out of 1-1 if we could kill some enemies at the right Y pos and collect a powerup at the right X pos. it would of course be much slower than what we're doing now with the powerup.
Avatar
oh thats interesting
02:43
haha thanks for looking into that. That would've been wild
Avatar
threecreepio 2026-03-26 02:43
have you managed to actually get the ACE today? if you've been trying any.
Avatar
0/12 this morning, just booted it up and got it first try
02:43
but then the next few didnt work
02:44
i really wanted to get a better recording with my phone camera instead of the webcam
Avatar
threecreepio 2026-03-26 02:44
maybe we need to add console heat as a variable. :)
Avatar
yeah apparently
02:44
Timezone: UTC-5