ruffle-rs / ruffle

A Flash Player emulator written in Rust
https://ruffle.rs
Other
15.62k stars 807 forks source link

Ruffle Error #2220

Closed ny1000 closed 2 years ago

ny1000 commented 3 years ago

Hello, I'm trying to access MIT's old flash based games like Elude http://gambit.mit.edu/loadgame/elude.php or Molleindustria's Phone Story http://www.phonestory.org/game.html and I'm getting a bunch of errors. See the attached video.

Thanks for your help!

https://user-images.githubusercontent.com/76859372/103450820-9f31be80-4c89-11eb-8157-492f69149175.mp4

Toad06 commented 3 years ago

Thanks for the report.

The first issue is that gambit.mit.edu tries to load the SWF file from web.mit.edu, which doesn't work due to security restrictions of modern web browsers. Unlike the official Flash Player, Ruffle cannot bypass this and unfortunately ends up displaying a white screen. You can see (#1672 (comment)) for additional information. Also note that the file itself doesn't work at the moment because it uses ActionScript 3, which is still a work in progress. You might want to download the file for later use, so here's the link to the swf: http://web.mit.edu/gambit/summer10/team4/MS7/elude_gold.swf

The second issue is that Ruffle loads freeculturegame-sopa.swf which is a file that doesn't exist. Flash plays phone_story_web.swf. This difference is actually not a bug in Ruffle, as current web browsers no longer support the classid attribute on the object tag, which Ruffle does to increase compatibility with oldest websites. As the HTML embed is not properly set up, this unfortunately ends up displaying a white screen in this situation:

            <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="320" height="480" id="freeculturegame-sopa" align="middle">
                <param name="movie" value="freeculturegame-sopa.swf" />
                <!--[if !IE]>-->
                <object type="application/x-shockwave-flash" data="phone_story_web.swf" width="320" height="480">
                    <param name="movie" value="phone_story_web.swf" />
                    <!--<![endif]-->
                    <a href="http://www.adobe.com/go/getflash" class="whiteLink">
                        <img src="images/flash.svg" alt="Get Adobe Flash player" />Click to activate Flash
                    </a>
                    <!--[if !IE]>-->
                </object>
                <!--<![endif]-->
            </object>
Toad06 commented 2 years ago

First issue fixed by #4665. Second issue fixed by #6604.