The fix to this would be change the enemy spawning code to avoid two enemies spawning on the same tile. That is more work than it sounds like, so this is a problem that is added to the "maybe later, I'm getting tired of this" category.
...
Yes. If I spawned the player right on top of a door, I'd have to add more code to avoid having the player keep spamming between the room and the labyrinth if they hold the up button.
...
Another entry into the "too much work to fix" category. For now.
Right, sounds good. I'm trying to avoid making any suggestions whose payoff vs. work aren't justified this close to the finish line, but obviously everything that doesn't break the game horribly is a candidate for 2.0/DX version down the road, if you want to improve it further.
I asked about the doors, since... I think that's going to be a minor aesthetic displeasure to some. Most games warp you on top of the doors, and TLOZ was an exception. Since it generally uses autowarps obviously you can't return the player on top of warps normally, but I figured with Up required, all you'd need to do is store some info about the previous frame:
IF (PrevFramePlayerOverDoor=true AND PrevFrameUpDepressed=false) AND (CurrFramePlayerOverDoor=true AND CurrFrameUpDepressed=true) THEN WARP
etc. This would force the player to release Up to go back through the door after coming out, right?
It would also have the added benefit (?) of forcing the player to release/depress Up when moving onto the door in the first place, so if you're aiming up and firing while moving sideways or jumping up onto one, it doesn't force you into the cave room.
It's pretty trivial/cosmetic and I have no strong feeling about it one way or the other. I might lean towards arguing for it if you hadn't made design choices that placed the player far from the door when exiting some cave rooms.
Basically I'm just grasping at straws here. You've mostly run me out of things to complain about...

And I agree about the multiple scrolls - actually, I haven't noticed it
even one single time since posting. Went back and did a little testing, and lo and behold, the two rooms where it double-scrolled if I fell while holding jump, it turns out that having High Jump kills the bug. Took away HJ while keeping DJ1, DJB and WCB and tried it - I got an extra up/down scroll. Added HJ back, and extra scrolls went bye-bye. I still get the little hop producing a double-scroll when landing on second-row platforms, but I think why I hadn't noticed it again is probably because once I got higher jumping ability, I'm far less likely to just barely clear the tops of these 2nd row platforms, and hence more likely to release L when falling in the room above and avoid producing it.
And Gleeok - re: quickscrolling jerkiness - it's actually fine, for me. When I first tried it out I had too much else going on, but just enough that while it didn't impact the regular sprite movement in ZC, it made the scrolling noticeably unsmooth and hence I assumed it was the engine. Later on when the entire engine dropped FPS to jerk city, I tried reducing the CPU/RAM load and everything, including the quickscroll, ran smoothly again.
Bug Reports:
The smaller enemy - not sure if v1 in Cancer does this too (probably does) or whether it happens on the right side too - if you stand on the left side of the room and let him move past you offscreen, he'll remain offscreen indefinitely, and fire his shots into the 1st/2nd columns, even if you move away from the left side (he won't follow you back onscreen.) Probably not a big deal since I doubt any rooms require clearing these guys to proceed.
The bigger enemy seems to have a hitbox that shifts offcenter to the left when it moves left (I think? or right, not sure.) He also applies damage to me when there's over a halftile worth of space between me and the visible right edge of his sprite, though I forget if this applies to it moving in both directions or just one.
Also, can you tweak the enemy FFCs that walk, and reverse upon reaching a wall or platform edge, so they can detect when their walking space is equal/slightly wider than their sprite, and code it to
suppress the direction reverse while they're facing
towards the player? This would prevent the ugly, repetitive flipping of their sprites when stuck on tiny platforms - the big plant always spawns on one of the two 3-combo-wide platforms in Virgo 0C when you enter from the left, and thus looks like a mess. The robomailboxes would especially benefit from this, as they do this more frequently than most of the enemies, and look terrible when they do.
Aries Zodiac Boss animation looks crappy sometimes - he'll stand there firing missiles at you and then suddenly flip to a different sprite for a single frame and then back, not sure why/what he's doing, but it looks weird.
Gemini Zodiac Boss drops a little wriggling worm enemy - is he supposed to do that? It's one of the TLOZ enemies resprited to a wriggling worm that grows into a wormpile you used to have in the gut section of Cancer.
Leo Zodiac Boss - his weakness is the Virgo Whip, but it seems like the whip's graphic extends farther than its hitbox. Strangely, I could stun Leo with the end of the whip, but not actually damage him. And getting in close enough to actually deal damage with it had me constantly taking contact damage from the boss.
Capricorn Zodiac Boss - I killed him with a single charged Leo shot (he stopped near the ceiling and I did a vertical shot, which I think kept me in contact with him longer while dealing damage or something.)
Haven't noticed any other bugs/graphic glitches with the other ZW bosses.
Aries 1C/1D: Gate/door CSet mismatch - gates are bluegrey, doors turn sea green after opening.
Leo 1B: Another screwy door. You don't change position when warping back to Leo from the cave room, dropping out near the lower-right corner instead.
Leo 2B: Leo Zodiac Boss doesn't stay dead - keeps warping back to boss fight after defeating him. Had to cheat/trap him in right corner to kill him and move into ZW room without rewarping.
Also, I've been having trouble gaining some of the subsequent ZWs. I think the problem is always with ones I approach from the left, which includes Aquarius (where I triggered the initial message and had trouble, and had to switch to regular 2.50.1 version to gain weapon.)
The last two times I've had this trouble closing the message string without selecting "No" from the prompt, instead of saving/quitting/loading 2.50.1/returning, I just noclipped out and around to the other side of the ZW interface room, and approached from right instead, and had no trouble gaining the item.
Gemini 2B: So yeah, finally found it. Dunno how I feel about you switching them now. I was just careless and overlooked this one / didn't use my x-ray scope. Might be most players
will find this one first, which makes rewarding them with a useless item for beating a corridor later kinda lame.
Anyways, the two rooms with enemies, they generate explosion sounds when clearing the enemies, but no path is cleared anywhere - the way forward is open to begin with.
ETA: Actually, if you wanted to hide it really
deviously, you could move the entire structure from 2B to 18, set up sidewarps along 18's adjacent edges in 08, 17 and 19 to skip over it, and make 28 a Maze Path, exit: south. You could use sets of 1, 2, 3 and 4 stars near the edges of 28 for clues to the solution, and/or maybe place a cave terminal somewhere, with a clue about avoiding a spacetime anomoly at those coords? Then you'd pretty much need the Infinite Jump Boots or Grappler 2 to find it (or at least, the Anti-Gravity Device and several Life Tanks) locking it in as an endgame item.
Capricorn 6D: Opening doors are bluegray - gate and opened doors are sea green.
Libra 7D: This switch also can be triggered with the Sidearm with sufficient Speed upgrades spreading it. Room is designed to force player to approach from below, but you can enter from above and shoot right while between the alien statues and trigger it.
Libra: It's still possible to have your sprite turned black by warping through a door as a windrobe warp hits you, which can only be restored by death/F6 or leaving Libra (I think?) Can this be fixed or is it a ZC bug?
Libra 6D: Like 6C, this room also has the freezing alien in the upper-left corner, on top of an iceblock, instead of within the room. Unlike 6C, it does not appear to contain any empty unwalkable positions where the alien ought to be.
Libra 5B: Sometimes the turrets spawn underneath spikes instead of a ceiling block. When they do, they immediately vanish with a death explosion sound. (They do this in other rooms too. Intentional?)
Libra 5A/6A: The tile warps on the top-left side of 6A are still messing these rooms up badly. After fiddling with ZQ all morning I think I understand what you've tried to set up here and why/how it's breaking.
Maybe I'm wrong (I have no quest-making experience after all) but I do not think you can use scrolling warps with tile warps (instead of side warps.) You've got four tile warp A's along the top row of 6A, but they're direct warps, which according to ZQ ignore the warp destination square(s) on the target screen. So when you jump up into one, rather than scrolling the screen up and placing you on the bottom (with your jump momentum carrying you upwards) as I assume you've intended, instead it's scrolling into 5A but keeping you at the top of the screen; if you're facing left/right, it then scrolls you again, pushing your character to the side of the screen.
Even if that worked, it still would mess up falling into 6A from 5A, since I don't think you can tell ZQ/ZC to ignore the tile warps along the top row, when scrolling in from above. So when I fall into the pit, the screen scrolls, and I immediately warp/scroll back up into 5A, and then scroll again in the direction I'm facing (when facing up, for some reason I remain on the bottom of 5A and immediately fall back into 6A, entering a loop.)
So I don't think scrolling is an option here. I tried setting up a pair of rows of four separate (A,B,C,D) Sensitive Warps along the bottom of 5A and top of 6A, and placing the Warp Return Squares on the second row from the edge in each screen, all with Insta-Warps, so that you warp past the the warps on the screen edge and avoid looping that way. It's jarring, but it
works. I assume if you just used Stair warps then you could fall/jump up between them and either get stuck in a loop, or side warp and bounce off the bottom row of 6A, so the squares have to go a full row above/below the warps rather than overlapping a halftile. Maybe it would look better with a 2x4 block of swirling warp tiles on top of the warps... I dunno.
Alternatively, you could just scrap the tile warps altogether and either put a floor on the left side of 5A's bottom row, or redesign it something like this?
Edited by newstarshipsmell, 31 July 2015 - 07:19 AM.