ruffle icon indicating copy to clipboard operation
ruffle copied to clipboard

Multiple issues with dagobah flash videos.

Open purifetchi opened this issue 5 years ago • 3 comments
trafficstars

Heya, I've decided to take a look and report any flash loops that are broken from my dagobah collection. I've tried my best to exclude any loops that are broken due to the lack of video or AVM2/AS3 support.

I've tested everything on a Windows 10 machine running the latest desktop build of Ruffle (24th July 2020). Every loop was compared to the playback from the Adobe Flash Player 32 standalone player.

  • BadBoyBass.swf: The underlying gif isn't visible, the overlay is though. (No errors in console)
  • breathe.swf: The gif doesn't play until the viewport is resized. After that the loop plays fine. (EDIT: This swf actually produces this WARN in wgpu: [2020-07-27T17:31:05Z WARN wgpu_core::device] Requested size 100x75 is outside of the supported range: Extent2D { width: 120, height: 75 }..=Extent2D { width: 120, height: 75 })
  • Cat_with_Bow.swf: The collision/ragdoll(?) is completely broken, it's frozen in place with the bones going crazy. (EDIT: With warn turned on, this game produces these errors: [2020-07-27T17:32:53Z WARN ruffle_core::avm1::object] Object method toString is not callable -- in [Actions Parent] / [Frame] and thread 'main' panicked at 'attempt to subtract with overflow', core\src\avm1\globals\array.rs:159:58 before panicking and exitting.)
  • colin_hd.swf: The gif that fades in is stuck on the first frame. (ibid)
  • Cursor_Invisible.swf: The initial particles for when a target is destroyed are misplaced. After you destroy a couple more targets everything corrects itself. (EDIT: With warn on, this game produces this error: [2020-07-27T17:34:12Z WARN ruffle_core::avm1::object] Object method gotoAndStop is not callable -- in [Actions Parent] / [Frame] but functions fine.)
  • Daydreams.swf: The preloader is broken, constantly flashes the gif in and out. (EDIT: As Herschel stated, AS3.)
  • grim_grinning_ghosts.swf: Same issue as BadBoyBass.swf. Only the overlay is visible. (ibid)
  • ~~HAGIMURA_EXTREME.swf~~: Music plays fine, the GIF doesn't display. (fixed by #931)
  • ~~kagomedance.swf~~: Same issue as above. (fixed by #931)
  • Komachi_Caramelldansen.swf: The animation is very choppy, it randomly pauses while playing. (ibid)
  • lumspin.swf: Seems to have the same issue as Daydreams.swf. Though this one doesn't seem to have a preloader AFAIK. (EDIT: Also AS3)
  • Obstruction449.swf: Can't play due to the lack of Nellymoser decoding. (Also I think it uses ActionScript 3 to an extent, though the console didn't mention any errors related to that)
  • serious_business.swf: The preloader has the same issue as Daydreams.swf, but after a while it loads the loop properly. (EDIT/NOTE: This one doesn't warn about AS3.)
  • ~~yogurtingeyes.swf~~: Same issue as HAGIMURA_EXTREME.swf. (fixed by #931)
  • DoILookInsane.swf: Same issue as BadBoyBass.swf.

Also, since dagobah seems to be down at the moment, I've packaged everything and uploaded it onto my own server: https://nanoshinono.me/24jul2020.zip

Cheers

EDIT(27th July 2020): I've compiled Ruffle, and added some warnings produced by Ruffle which the pre-built binary didn't emit.

purifetchi avatar Jul 24 '20 19:07 purifetchi

Thanks for the list!

  • BadBoyBass.swf: needs blend modes (cc #58)
  • colin_hd.swf: ClipActions get wiped out on modify PlaceObject (!!!!)
  • Daydreams.swf: AS3
  • Komach_Camarelldansen.swf: Sprites with incorrect framecount (Sprite say they have 40 frames, but only 20 ShowFrames? SWF generated with a 3rd party tool?)

Herschel avatar Jul 24 '20 20:07 Herschel

Daydreams appears to now break because it's trying to get loader info off of the Stage, which we don't support yet.

This appears to be the last missing feature; once Stage is implemented and we can access loader info through it, this preloader should run.

kmeisthax avatar Apr 11 '21 03:04 kmeisthax

breathe.swf, Cat_with_Bow.swf, colin_hd.swf, Cursor_Invisible.swf, Daydreams.swf, lumspin.swf, Obstruction449.swf, serious_business.swf: All seem to be working now! 🎉

Komachi_Caramelldansen.swf: issue still exists. (The SWF seems to have been deleted from dagobah so I'm glad you reuploaded it, naomiEve!)

BadBoyBass.swf, grim_grinning_ghosts.swf, and DoILookInsane.swf: These need blend modes which still aren't implemented.

n0samu avatar Sep 11 '22 02:09 n0samu