Jump to content

Photo

[FIXED][2.50+] ZQuest: tile overwrite protection fails on A.SkipX


  • Please log in to reply
1 reply to this topic

#1 Lüt

Lüt

    Germanize

  • Members
  • Real Name:Steve
  • Location:Chicago

Posted 25 January 2019 - 02:59 AM

...and probably A.SkipY.

When ZC expanded its combo animation features by allowing the ability to skip tiles during an animation, it apparently forgot to account for this new ability in its tile overwrite protection system.

An example:

Grab the Dance of Remembrance: Hybrid Tileset.

Go to a screen that uses any dungeon palette (there's a cluster on the right side of Map 1, or make your own and choose any palette between 058 and 08C).

Go to a blank tile page (30 should work) and set your CSet to 4.

Grab this tile sheet:

rm-mc-water-dorh-dgn-pal-cset4.png

Now on the loaded tile page, select the first 4 columns:

zq-tileoverwritefails-01.png

Press "M" to make them into combos (for testing purposes, you might as well just overwrite the combos at the start of the list).

On the combo properties window, enter these settings:

zq-tileoverwritefails-02.png

The important ones are an "A.Frames" of 4 and an "A.SkipX" of 3, which tells the animation to skip 3 tiles every frame, thus using every 4th tile per combo animation.

Hit OK.

Now, if you try to overwrite any tile on the page by copy/paste, then every tile on the page should give an error message like this when pasted to:

zq-tileoverwritefails-03.png

However, only the tiles in this selection are protected:

zq-tileoverwritefails-04.png

Because the tile overwrite protection system fails to account for the A.SkipX setting, it only sees the 4-frame animation setting, thus only extends protection to the next 3 columns after the 4th.

More specifically, this oversight can also protect tiles that don't need protecting. Let's say I only decide to animate the first column:

zq-tileoverwritefails-05.png

Using the same A.SkipX of 3, the tiles that should be protected are these:

zq-tileoverwritefails-06.png

However, the tiles that are protected are these:

zq-tileoverwritefails-01.png

So now we have used tiles not being protected, and unused tiles being protected.

I'd imagine this problem extends to A.SkipY also, but honestly I've never used it and have no idea what I'd even use it for, so I can neither confirm nor deny the problem there.

Also worth noting, this effects the "View" -> "Hide Used" / "Hide Unused" options on the tile page as well, and enabling these will either hide used tiles or display unused tiles depending which one you choose.

This has been present since ZC 2.50.0, and is confirmed in 2.53 B35 and 2.55 A12.
  • ShadowTiger likes this

#2 Emily

Emily

    Scripter / Dev

  • ZC Developers

Posted 08 April 2020 - 10:37 AM

This also affected moving tiles. You know how when you move tiles a combo uses, if you move some of them, it gives you a warning, but if you move all of them, it moves what the combo uses to match?

Well, uh, it would give the warning when it shouldn't, and it would move the combo's tile when it should have given the warning, and it would give the warning when it shouldn't.

 

Good news; notice the word 'would' being used there, past-tense. This has been fixed entirely for 2.55 A60. This will NOT be fixed in 2.53.1- the earliest 2.53 can have the fix will be 2.53.2.




1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users