If you are looking for the decompiler itself, visit https://github.com/jindrapetrik/jpexs-decompiler
NEW : We have got a new blog where we post some interesting SWF internals info.
List of issues#1903 FLA export of character is missing an eye
Author: nosamu
Date created:
Type: bug
Visibility: Everybody
Assigned to:
Labels: FLA exportShapes
State: closed
> What steps will reproduce the problem?
1. Open the attached SWF file in FFDEC
2. Export the SWF to FLA or XFL (exact setting does not matter)
3. Open the FLA or XFL project in Adobe Flash CS/CC or Animate.
> What is the expected output? What do you see instead?
I expect that the character graphic will be exported correctly, so that it looks the same
as
it did in the SWF.
The FLA is exported incorrectly, as shown in the attached screenshot. The character is
missing one of his two eyes.
> What version of the product are you using? Is it "nightly build"? Which operating system
do you have?
FFDEC version: 17.0.4 (stable)
Operating system: Windows 10 64-bit
> Please provide any additional information below. If the problem is related to a SWF
file, attach it here, otherwise we can't help you.
character.swf (12 KiB)CS6_Screenshot_MissingEye.png (37 KiB)
I tried to drag and drop the SWF into Flash CS6,
the eye was correct then.
CS6 does some magic with the shape edges upon import,
I don't know how it works :-(.
In FFDec, the edges are save into FLA as is, without any modifications,
and this approach seems to not work.
It requires some processing. But the algorithm is still unknown to me.
As a truly minimal reproduction, I've edited the SWF to remove all of the extraneous fill
styles and shape records, leaving only those pertaining to the eye that causes the issue.
Observe that the eye graphic only uses 3 colors (#DB9C64, #3D2618, #FFDBB7) but some of
the eye graphic's StyleChangeRecords refer to a fourth color (#FFCC99) in the first fill
style. I think this color is completely covered up by other fills, so it appears unused in
the final graphic. And when I drag the SWF into Flash CS6, it seems like it observes this,
removes the unused fill style, and recreates the shape records to not use it anymore.
Notice that if you save an XFL from the imported SWF, there are now only 3 fill styles,
which are for the 3 colors that the graphic actually uses.
mini1.swf (238 B)
This is fixed in nightly 2674.
State: new→upgraded
Confirmed! I appreciate your hard work on this!
Thank you!
Yes, this was very time-consuming.
At first I thought this will never be fixed, but luckily, I have found a way how it
works...
It's all about crossing edges. Flash editor does not like when two edges cross so they
need to be splitted in the half.
I hope this won't break anything. Feel free to report any related problems.
State: upgraded→closed