ruffle-rs / ruffle

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

Level wont start in CEC 3 TW #16723

Open TherNoNick opened 2 months ago

TherNoNick commented 2 months ago

Describe what you were doing

Car eats car 3: twisted dreams-my favorite game in CEC series. After I found out about riffle, I immediately went to play it, but when I started the level, it just didn't start

What does the crash message say?

The crash message is didnt say anything. The game just have infinite loading

Ruffle Version

final version

Affected platform

Desktop app, Browser's extension

Operating system

Windows

Additional information

No response

Lord-McSweeney commented 2 months ago

Can you ZIP and upload the SWF file you were using to run the game in Ruffle? Or if you were playing from the SWF URL, what URL were you using?

Lord-McSweeney commented 2 months ago

I can reproduce the issue with the level not starting. The game also hangs for a while on some transitions, this appears to be DO work. First transition (after clicking "start new game" to choosing a save slot):

Overhead  Command         Symbol
   7.34%  ruffle_desktop  [.] <ruffle_core::display_object::movie_clip::MovieClip as ruffle_core::display_object::TDisplayObject>::construct_frame     
   6.23%  ruffle_desktop  [.] <ruffle_core::display_object::movie_clip::MovieClip as ruffle_core::display_object::TDisplayObject>::run_frame_scripts   
   6.09%  ruffle_desktop  [.] <ruffle_core::display_object::movie_clip::MovieClip as ruffle_core::display_object::TDisplayObject>::on_exit_frame       
   1.94%  ruffle_desktop  [.] <ruffle_core::display_object::graphic::Graphic as ruffle_core::display_object::TDisplayObject>::construct_frame          
   0.20%  ruffle_desktop  [.] <ruffle_core::display_object::DisplayObject as ruffle_core::display_object::TDisplayObject>::construct_frame             
   0.18%  ruffle_desktop  [.] <ruffle_core::display_object::DisplayObject as ruffle_core::display_object::TDisplayObject>::on_exit_frame               
   0.13%  ruffle_desktop  [.] <ruffle_core::display_object::DisplayObject as ruffle_core::display_object::TDisplayObject>::run_frame_scripts           
   0.08%  ruffle_desktop  [.] <ruffle_core::display_object::edit_text::EditText as ruffle_core::display_object::TDisplayObject>::construct_frame       
   0.08%  ruffle_desktop  [.] ruffle_core::frame_lifecycle::run_inner_goto_frame                                                                       

Second transition (after clicking "car eats car 3" on the choose a game screen):

Overhead  Command         Symbol
   7.41%  ruffle_desktop  [.] <ruffle_core::display_object::movie_clip::MovieClip as ruffle_core::display_object::TDisplayObject>::construct_frame           
   6.11%  ruffle_desktop  [.] <ruffle_core::display_object::movie_clip::MovieClip as ruffle_core::display_object::TDisplayObject>::run_frame_scripts         
   6.03%  ruffle_desktop  [.] <ruffle_core::display_object::movie_clip::MovieClip as ruffle_core::display_object::TDisplayObject>::on_exit_frame             
   1.88%  ruffle_desktop  [.] <ruffle_core::display_object::graphic::Graphic as ruffle_core::display_object::TDisplayObject>::construct_frame                
   0.19%  ruffle_desktop  [.] <ruffle_core::display_object::DisplayObject as ruffle_core::display_object::TDisplayObject>::construct_frame                   
   0.17%  ruffle_desktop  [.] <ruffle_core::display_object::DisplayObject as ruffle_core::display_object::TDisplayObject>::on_exit_frame                     
   0.12%  ruffle_desktop  [.] <ruffle_core::display_object::DisplayObject as ruffle_core::display_object::TDisplayObject>::run_frame_scripts                 
   0.08%  ruffle_desktop  [.] ruffle_core::frame_lifecycle::run_inner_goto_frame                                                                             

Third transition (after clicking one of the level numbers to start it):

Overhead  Command         Symbol
   4.59%  ruffle_desktop  [.] <ruffle_core::display_object::movie_clip::MovieClip as ruffle_core::display_object::TDisplayObject>::construct_frame              
   3.96%  ruffle_desktop  [.] <ruffle_core::display_object::movie_clip::MovieClip as ruffle_core::display_object::TDisplayObject>::run_frame_scripts            
   3.82%  ruffle_desktop  [.] <ruffle_core::display_object::movie_clip::MovieClip as ruffle_core::display_object::TDisplayObject>::on_exit_frame                
   1.62%  ruffle_desktop  [.] <ruffle_core::display_object::graphic::Graphic as ruffle_core::display_object::TDisplayObject>::construct_frame                   
   1.04%  ruffle_desktop  [.] ruffle_core::avm2::activation::Activation::run_actions                                                                            
   0.80%  ruffle_desktop  [.] ruffle_core::frame_lifecycle::run_inner_goto_frame                                                                                
   0.30%  ruffle_desktop  [.] ruffle_core::avm2::function::exec                                                                                               

On the last transition, this error appears 6 times:

Error dispatching event EventObject(EventObject { type: "enterFrame", class: flash.events::Event, ptr: ... }) to handler FunctionObject(FunctionObject { ptr: ..., name: Ok("rcCore::PatternsLib/loading()") }) : RangeError: Error #1125: The index 1 is out of range 0.
    at rcPackers::rcGroundPack/parseLine()
    at rcPackers::rcGroundPack/expand()
    at rcPackers::rcPack/expand()
    at rcCore::PatternsLib/loading()

After which this error is logged forever:

Error dispatching event EventObject(EventObject { type: "enterFrame", class: flash.events::Event, ptr: ... }) to handler FunctionObject(FunctionObject { ptr: ..., name: Ok("rcCore::PatternsLib/loading()") }) : TypeError: Error #1007: Instantiation attempted on a non-constructor.
    at rcCore::PatternsLib/loading()