Karl_ wrote:I managed to glitch out the map! It's really cool!
...
How to reproduce: stand in the empty tile immediately diagonally top-right from the portal to the kennel; hold down A and S to move diagonally bottom-left into the portal.
I guess that approaching the portal from the wrong angle messes up the code that transports you to the indoors world.
I think you'll find...
https://www.zeldaspeedruns.com/la/dogho ... use-glitchIt's a feature
You're not wrong though, entering the door from the wrong angle is the cause of the glitch in Link's Awakening - although it behaves a little differently to my recreated version here! It's not the only "glitch" I've replicated either - you can also screen warp by pressing "-" as you transition screen. I'm even fairly certain you won't actually break anything with either!
That's not a growth wrote:OrangeRKN wrote:I'm uncertain as to whether I will try to slow diagonal movement down, I agree it feels quicker (naturally as it is the diagonal of a square unit) but I'm unsure that changing it will result in it feeling better - I need to have a play around.
I've heard in developer interviews sometimes when you have something like this it's not always the obvious solution - eg, there was a game (I think Half Life 2?) where the players were complaining a reload animation was too long. Rather than reduce the speed of the reload, which would have affected balancing, they reduced how many movements there were in the animation so it felt less busy and got positive feedback.
But I do think in this case it's too quick. It feels like it's still moving side to side is as quick when moving diagonally than when you're only moving in one axis - but you're travelling over more distance.
To me it feels moving along the red line takes the same time as the blue, but should be a fraction slower.
It does take the same amount of time because diagonal movement currently is just the sum of moving in both the x and y directions. Theoretically it should take ~1.4x the amount of time as it is ~1.4x the distance. I have a few options:
- Alternate diagonal movement between x and y every frame. This will make it 2x as slow, so a fair overshoot, and possibly you would feel the "zig-zag" (not sure, would have to playtest).
- When moving diagonally, do not move every other frame. This will also make it 2x as slow, but should be an even stop-start rather than a zig-zag.
- When moving diagonally, do not move every third frame. This will make it 1.3x as slow, which might be close enough to the expected speed, but the asymmetric stop-start may be noticeable to the player.
I'm going to try out the third option at some point and see how it feels.
That's not a growth wrote:The main 'slightly annoying' thing that was sticking out as I was playing just now was I would sometimes move through the edge of the screen to another part of the map by accident when I didn't mean to when moving around some of the set/ too close to the edge. I would even occasionally ping quickly through 2 if on a corner which was very disorienting, when done unintentionally. Would it be possible to make it so the playable area is actually 1 square large than the visible window, and you only move to the next window when you go more than half way over the threshold? (so the character is visibly creeping over (I suppose under) the edge before you transport them - essentially giving a margin of error).
There is a buffer for transitioning screens (currently at 6 frames) where you need to move against the edge for that number of frames to trigger a transition. There is then an input delay after transitioning (also currently set to 6 frames) where you can't do anything until that number of frames has passed. The balance is in minimising the accidental transitions without getting in the way of intentional transitions. I've already upped the similar input delay on using a door to 12 frames and I could play around with some different numbers on screen transitions, although I do like how "snappy" they are at the moment (also an effect of having no transition animation).
Taking Link's Awakening as a reference point, there the player can move ~3 pixels out over the edge of the screen which makes transitions feel a bit more deliberate. That's basically what you're suggesting above and is probably worth investigating!