MESHUGGAH: My bad, was posting from memory and had completely forgotten that bird needs to be killed in order to make that jump.
Very cool to know why the cats sometimes turn around like that, something that would have probably never come up without this pacifist project.
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
Looks like everything is fine until 2-2 end, since I already spawn enemies as fast as possible and avoid interrupts to get good boost for the platforms. Position sacrifices optimized to manipulate the next enemies in a row (slot 5 knife thrower, knife guard, bullet guy) at best.
So continuing to work on the next levels with all the interrupt jugglings and position tricks. Will update post on next WIP.
edit: User movie #14932283775578750 saved 2 frames by interrupt juggling the first three guy and another interrutp betwen dog and knife tosser. Probably improvable with 1 frame.
PhD in TASing 🎓 speedrun enthusiast ❤🚷🔥 white hat hacker ▓ black box tester ░ censorships and rules...
User movie #14960471367664459 saved 1 frame on 3-1, but 3-2 knife tosser now attacks me.
Need to figure out optimal route (continuing this route with different subposes and adding a delay OR using previous route without adding any delay).
google spreadsheet comparison here as alwaysedit: User movie #14979094480289965 - adding a delay before 3-2 (end of 3-1) let me to pass knife tosser. Looks like inevitable to go without that delay. Should be placed better at 3-1 to somehow manipulate 3-2 first bird or slot 7 objects (or bullets on 3-1?)
PhD in TASing 🎓 speedrun enthusiast ❤🚷🔥 white hat hacker ▓ black box tester ░ censorships and rules...
Joined: 4/17/2010
Posts: 11478
Location: Lake Chargoggagoggmanchauggagoggchaubunagungamaugg
Headbanging was hilarious! I may tweak it a bit when applying the post-boss dances though.
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
Joined: 4/17/2010
Posts: 11478
Location: Lake Chargoggagoggmanchauggagoggchaubunagungamaugg
Scumtron, tell us more about "making enemies fall from platforms"! That particular case doesn't help, but overall it can be useful.
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
Current tests done and needs to be done (edit: updated with "current" rng in bold):
1-1: using spawn avoidment is 0.5 px slower12.5px faster. Route is nearly the same as previous one except an RWJ is now ineffecient probably (<-- next test). spawn delay doesn't helps (since we need to sacrifice position later then too). manipulating tyson "later" jump is impossible to maintain (tyson catches us). It looks unimprovable
2-1: too few objects -> spawn delay/avoidment isn't a time saver. also we have bad subposes now.
2-2 (1st,2nd screen): same as above
2-2 (3rd screen): we have enough objects to play with, but not enough to make "anything" time saver. currently trying to somehow delay 2nd or 3rd soldier to be able to reach the platform (bullet guy) as fast as possible without too many slowdowns/wait.
3-1: spawn delay friendly, but positions are so bad...
PhD in TASing 🎓 speedrun enthusiast ❤🚷🔥 white hat hacker ▓ black box tester ░ censorships and rules...
Joined: 4/17/2010
Posts: 11478
Location: Lake Chargoggagoggmanchauggagoggchaubunagungamaugg
The only lucky pattern of the knife bitch is exactly when it was. This is why 2 pixels I saved earlier didn't help. Because spawning her at 7964 is the only way. I went by falfpixels until that point now, and here it is.
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
Not something I ever looked into too deeply since I couldn't envision any use for it in a standard run. Should be related to the kitties changing direction when they hit the corners just so, though. I know it's not as simple to manipulate as in NGII, where one well-placed frame of backwards movement can make it happen. In NG, it seems that sometimes you even have to back up enough to despawn a thing then resume forward movement so it'll be in the proper spot.
Is there any non-obvious reason for the 4-1 bat-boost across the gap? Jumping (to avoid hitting the shell) down to the small platform and climbing back up ought to be faster, pacifist or not.
Let me answer to this once I'm there again. Somewhere around my resyncing progresses a dog/cheetah were below me on that place, not letting me to touch the floor and jump to next platform to go for walljumping route. (And I think you are right, it should be few frames faster)
Progress so far. The "best" RNG we had was in WIP54 which let us jump over BITCH "instantly" (2.0px + 1 frame sacrifice?). Since we improved 14 frames beforehand using spawn delay and route change for 2-1 guardian of ladder tyson, most of our luck has "vanished".
Some notes that might become useful (and about to test them):
1. Most of the time (if not always), we can reposition delays to different levels for example removing 1 frame delay from 1-1 and add it to 1-2 boss level. Apart from different subposes, this would be benefitable if we get 0 subtimer for boss fight (feos' 3 frame save trick) OR changing (different) subposes
2. I believe that the (time) RNG alters nearly every enemies. At least I had enough situations where I manipulated things back (changing Nth slot subpos to desired value at same place with different in-game time) but it was still not working.
3. The combination of the 2 above is also different. For example in 3-1, using the very same position sacrifices differently (L,R instead R,L) can avoid or hit the knife tosser. However this specific situation "randomness" cause might be just because of that bird on the left screen.
feos' latest attempt WIP60 analysis:
Probably the best subposes to pull that off so far.
3-1 requires a delay (not implemented since it doesn't contains the 1 frame save by jumping later with better positioning to avoid the 3 bullets near the end) which would fuck up subposes and lesser bitch.
3-2 start is faster with feos' wallclimbing, but it's also affects our birdy and other positions. Not to mention that we need fewer X pos before boosting for first time, because we need to spawn delay right after the boost which usually ends on the same frame the lesser bitch spawns (so we need to land 1 frame earlier to go left to delay it)
3-2 can be continued with a half pixel sacrifice to let us jump on the platform to get through NFL (green runner guy) which loses 1 frame. Birdy also has a bad, "too low" X position to help us boost to next platform as fast as in our previous route
Things that's possibly manipulatable AND could help us:
1. repositioning delay points for better subposes (doing it now) edit: changes mostly Y sub poses, not really useful.
2. manipulate interrupt/spawn iterator? (for example spawning the dog 1 frame earlier on 3-1) I believe using a pause is different than sacrificing position. Any logical explanation for this? edit: not really works (pause efficiency is very low but helps in half pixel if everything magically combined).
3. while there's only a few, but spawning an enemy using spawn delay (moving back for 1 frame to spawn an enemy, like in 3-1 spawning the bird for second time) seems a good way to further delay other enemies (the knife guard on top after lesser bitch for example). edit: I can only squeeze 1.0 px which isn't enough to spawn dog earlier with an extra (sacrificial) spawn.
PhD in TASing 🎓 speedrun enthusiast ❤🚷🔥 white hat hacker ▓ black box tester ░ censorships and rules...
1. 1-1 uses fastest route, subposes only manipulatable with extra delay. Since we already need it, I'm considering it sacrificing in first RWJ place (above a guard) or somehow further manipulate the tyson-tyson-platform place. edit: not a time-saver.
2. 2-1 and 2-2 early part "optimizing enemy positions" (by spawning them later or removing direction frames) didn't work, but I still see opportunity to use it for 2-2 3rd screen.edit: soon
3. Try delays with a pause... yes, I will waste a few rerecords with still low hope.edit: doesn't works with delays but position sacrifices, also note that jumps will be 1 frame longer so that's a rarely useful trick for half pixels (enemy subposes too)
While I'm 2 frames faster with WIP 67v3 (User movie #15419723238486888), 2-2 3rd screen acts a bit differently.
Comparing WIP63v8 and WIP67v3:
8065(old) and 8062(new)
Slot4 (slot3 now) NFL player somewhy 1 frame (1.5px actually) slower, not sure if the slot change (knife tosser manipulated it I guess) affected it.
8372(old) and 8370(new)
see?
PhD in TASing 🎓 speedrun enthusiast ❤🚷🔥 white hat hacker ▓ black box tester ░ censorships and rules...
Summarizing update: WIP72v6 (latest uploaded) improvement potentials regarding all the tricks we gathered (prespawnsubpostrick/respawntrick/halfpixelinterrupt etc)
1-1 through 2-1: nope
2-2 second screen: nope, because the bullet goes too fast, the NFL guys goes too slow, the inability to get damage much later to avoid waiting for second NFL to climb the last platform.
2-2 3rd screen: nope, because the first and last bitch is already optimized to it's full potential and subposes also already optimized (the last 3 enemies)
damage boosting through bullet guy with the 3 NFL players is at least 10.5px slower
3-1: nope, using the best subposes and positioning already.
3-2: update: we need to wait for proper birdy manipulation, and 1110 (on marker) is the best one.
4-1: Because of time rule and improvements, bullets are 1 frame faster and we need to sacrifice 0.5px and more for perfect dog and bullet guy spawn avoidment
PhD in TASing 🎓 speedrun enthusiast ❤🚷🔥 white hat hacker ▓ black box tester ░ censorships and rules...
Regarding the 4-1 bat-boost: going off WIP74, it looks a jump on any frame from 16068 to 16072 avoids the bullet. That's one of the two things I consider major mistakes in the published run; the second is dropping down before obtaining the spin-slash in 5-2a, which isn't relevant for pacifist.
Obviously this depends on many factors (level timer, inherited subposes, the slot hierarchy, etc), and I would like to check that TAS once we are done with pacifisting.
Up to 3-2 start, couldn't make use of "slot change" nor simple enemy respawns (as feos pointed out, enemies always take the highest available slot, so repositioning a position sacrifice to respawn an enemy would benefit in changing the target object's subposition to a value (0x00, 0x80 or other values) which isn't always possible).
update:
- deleted last part of this post (respawn is iterator dependent, so sometimes)
- currently deleting missile guys when we take damage, because it's ~6-10 frames slower
I think it's more appropriate name for despawning an enemy, since we avoid their spawning, clearing their existence.
One could say it isn't true since he could respawn if we would go back (as we sometimes "revive" an enemy if he already died and his spawn point still on one of the sides of the screen)
PhD in TASing 🎓 speedrun enthusiast ❤🚷🔥 white hat hacker ▓ black box tester ░ censorships and rules...
Hi Im not was TASer but a NG pacifist lover i even been able to convert a lot of the current known TAS's strats to RTA and while practicing a strat on 7-2B i came across i think a frame perfect boost through the turrets using the bird and also forced a sprite limit despawning the hammer bro
the frame perfect was accidental so i was a little unsure of what to do when i got it but comparing it to using a strat similar to the TAS which is what my first clear was about 1 second faster and that was with bad reactions
hope this helps a little if not sorry
http://www.twitch.tv/gusmancini/c/4558501
I cant wait to see a 2.0 if this project is still in motion since its been a while and there hasn't been many posts on this topic lately
Joined: 4/17/2010
Posts: 11478
Location: Lake Chargoggagoggmanchauggagoggchaubunagungamaugg
Good find! Though, I bet MESHUGGAH will come up with something even faster when he's at it :)
Follow the progress here:
http://tasvideos.org/userfiles/game/175
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
I watched your video gusmancini. I only watched the TAS up to 5-2 or whatever, so I'm not that place so far. I don't know if it's faster, but I guess there's more I will reduce. We have plenty of tricks to save frames.
The reason I "rarely" upload movies is that
1. I already optimized most of the things to be fastest according to our knowledge
2. Currently I still have the same problem after a lot of "dead end" tests (I need to change specific slot's ID and subposition by delaying or spawning enemies at specific in-game time while tweaking the in-game time too).
3. As you see, it's a very complex task and I still try to save 2 (or 3?) frames which is only possible if I can "expand" the in-game time without extending the frames.
A bit detailed. Boss stages can be completed 3 frames faster if the in-game subtimer is 0 once killing him. To make use of this time rule, I need to avoid "interrupt juggling", which freezes enemies AND in-game time. And I don't even start to write how many things affects each other... in-game time versus bitches (=knife throwers) and the littlest (is that a word?) change can desync very easily.
So as always, I will submit once I magically find another way to avoid adding 1 frame to save just 1 frame (timer rule).
PhD in TASing 🎓 speedrun enthusiast ❤🚷🔥 white hat hacker ▓ black box tester ░ censorships and rules...
Well I was wrong in that you need subtimer 0 when pressing B and subtimer 60 on the frame the boss dies. Killing a boss like this will save 3 frames. As far as I know, parity (even/odd) doesn't matters. I could save 2 frames by adding 1 empty frame, which is the "last resort" solution. I still hope for saving 3 frames instead of 2.
PhD in TASing 🎓 speedrun enthusiast ❤🚷🔥 white hat hacker ▓ black box tester ░ censorships and rules...
Don't hate me, but taking the boost in 2-2B with Ryu half-a-pixel forward (left) is 1 frame faster. Plenty of space to adjust position in the jump there. Also thought the first bird-boost in 3-2 could be faster, but I guess it has to be that way so the soldier can be frozen/avoided later?
Hard to just jump in and change stuff in a run like this without knowing when and where enemy subpixels, etc. are important!
Don't hate me, but taking the boost in 2-2B with Ryu half-a-pixel forward (left) is 1 frame faster. Plenty of space to adjust position in the jump there. Also thought the first bird-boost in 3-2 could be faster, but I guess it has to be that way so the soldier can be frozen/avoided later?
Would you mind to show a screenshot or movie file? I don't see where did you get a half-pixel forward, maybe at the very end?
Scumtron wrote:
Hard to just jump in and change stuff in a run like this without knowing when and where enemy subpixels, etc. are important!
Well yeah, it would take too long to document and read the full chain of specific enemies specific subpos values and what events changes these...
Slot 7, 6 and 4 is the most important so far for my WIP (and the timer value).
PhD in TASing 🎓 speedrun enthusiast ❤🚷🔥 white hat hacker ▓ black box tester ░ censorships and rules...
Would you mind to show a screenshot or movie file? I don't see where did you get a half-pixel forward, maybe at the very end?
In the no-input, mid-jump frames (7483-7492) press R twice before moving L at 7493 and then another frame of L at 7512. This results in reaching the 2-2B exit on frame 7536 instead of 7537.