Skip to content

Troyis Chess: Couldn't parse SWF #9785

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
n0samu opened this issue Feb 28, 2023 · 3 comments · Fixed by #11957
Closed

Troyis Chess: Couldn't parse SWF #9785

n0samu opened this issue Feb 28, 2023 · 3 comments · Fixed by #11957
Labels
A-avm1 Area: AVM1 (ActionScript 1 & 2) bug Something isn't working swf Related to the SWF format

Comments

@n0samu
Copy link
Member

n0samu commented Feb 28, 2023

Describe the bug

Link to SWF: https://www8.agame.com/mirror/flash/t/troyis_chess.swf

Loading the SWF file for Troyis Chess fails with this error:
ERROR run_frame: ruffle_core::avm1::runtime: Couldn't parse SWF: Error parsing AVM1 action ConstantPool: Not enough data for string
ERROR run_frame: ruffle_core::avm1::runtime: No more actions will be executed in this movie.

The game displays but is not interactive.

Note that the game also fails to load in the latest Adobe Flash Player. But it works in Flash Player 7, 8 and 9 from here: https://archive.org/details/MacromediaFlashProjectors.7z

Expected behavior

The game should load as it does in Flash Player 7, 8 and 9.

Affected platform

Desktop app

Operating system

Windows 10

Browser

No response

Additional information

JPEXS Flash Decompiler is unable to disassemble the code in this movie.

I found this from the logs in #9047

@n0samu n0samu added bug Something isn't working swf Related to the SWF format A-avm1 Area: AVM1 (ActionScript 1 & 2) labels Feb 28, 2023
@Dinnerbone
Copy link
Contributor

Even FFDEC can't read the scripts 🤔

@n0samu
Copy link
Member Author

n0samu commented Feb 28, 2023

The log from #9047 shows a few other instances of this error, but all of those are immediately following an unknown opcode with a huge amount of bogus data, so I'm not sure if those are a different problem. They similarly fail to load in latest Flash Player, though. An example is Tiny Battle: https://www8.agame.com/mirror/flash/t/tiny_battle.swf

@Lord-McSweeney
Copy link
Collaborator

For future reference, the reason JPEXS cannot read the scripts was because the ConstantPool entries were invalid strings, which we now ignore.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-avm1 Area: AVM1 (ActionScript 1 & 2) bug Something isn't working swf Related to the SWF format
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants