absolllute / Mega-Hack-Pro-Future

Mega Hack Pro Suggestion & Issue Tracker
41 stars 5 forks source link

Improvement For Instant Complete #377

Closed sadohat closed 2 years ago

sadohat commented 2 years ago

Instead of making the icon going at a ridiculous speed. Just teleport the player at the end screen.

Nicko2102 commented 2 years ago

i think thats what it does, the "insane speed" is most likely just due to the nature of the game or the ending animation

NewAlexGamer commented 2 years ago

if the icon was actually travelling instead of teleporting you'd see the progress bar doing its thing. instead it's 100% the moment you enable it or enter the level with the hack already on the "high speed" you mention is just the camera that is taking a moment to figure out it needs to move to the icon so the level ends i mean, i would modify the x position instead of increasing the speed, don't know what absolute might have done. and i believe that's what it's doing, because even at 1•10^-99 speed the icon still disappears

sadohat commented 2 years ago

No. It makes the player move at a high speed so the game cant render collision blocks. Just tp 1 block before end.

Brittank88 commented 2 years ago

@absoIute I'm actually curious so if you have a moment would you explain how Instant Complete actually works? Gonna close this because the thing works and I don't see why it needs changing, but feel free to comment anyways.

sadohat commented 2 years ago

@Brittank88 iirc he explained somewhere that instant complete just sets the speed value of player to such a big value that every frame to calcuate the player and if its clipping desyncs so much that it cant keep up and the player goes to the end screen. Also, if you want more info and examples please check out my unrandomizer & xpos limit bypasser issue I created.

Brittank88 commented 2 years ago

Ah, if he's actually explained that already then maybe this issue is more valid than I thought.

Maybe the difficulty is finding the x pos of the end of the level. I wonder if the level completion event (hitting the endscreen) can be triggered directly without even caring about the icon position at all.

sadohat commented 2 years ago

@Brittank88 it is very much possible, because the completion has to have a event tied to it that will be executed. However, the bigger issue is it might not teleport the player and just bring down the drop out window and no progress is made. In that case, there maybe a way to locate the end screen, and if all else fails. Then teleport the player to the maximum gd can handle : 2 ^ 32. However, this will not complete levels like timeless or emptiness. However, he can make a xpos bypasser if he listened to me.

Brittank88 commented 2 years ago

"If he listened to me"

...dude you're not the boss here, and Absolute is a busy person. Take that attitude somewhere else.

sadohat commented 2 years ago

oh come on, i didnt mean it that way

Nicko2102 commented 2 years ago

not sure what other way there is to mean that but ok, also stop pinging people

absoIute commented 2 years ago

Current instant complete just teleports the player to xpos 100,000,000, which works just well enough for every level but Cyrillic's Timeless (99.99999% of levels) there's no need to remake it to suit edge cases like that

There's no such thing as an "xpos bypasser" without reprogramming GD's entire positioning system from float32 -> float64, and it wouldn't achieve much since levels like Timeless are so stupidly long that even they would still be bugged.

The complete animation can definitely just be triggered on level load, but again I don't really see a need to change it from a simple patch

sadohat commented 2 years ago

How about being able to customize the instant complete to any x pos?

Nicko2102 commented 2 years ago

Not sure why that would help, since teleporting yourself to the end of the level seems to do the same as teleporting yourself past the end of the level

NewAlexGamer commented 2 years ago

You can already do that by setting the variable

absoIute commented 2 years ago

Wouldn't help, TPing that far on levels it doesn't already work on just causes the game to hang