ruffle
ruffle copied to clipboard
Pursuit of Hat: level 5 does not load
Describe the bug
Pursuit of Hat (an AS3 game) plays fine (with minor issues) until level 5, which refuses to load. Clicking the level just goes to a black screen.
Note: level 1 may not be playable the first time it is loaded. The same issue occurs in real Flash Player. Just go back to the level select screen and select level 1 again, and it should work.
There are also some minor issues with the game in Ruffle:
- You need to click inside each level to activate the keyboard controls.
- Restarting a level does not play the associated sound effect.
- The BigDino intro animation is skipped, though its audio plays.
Expected behavior
Level 5 should load, keyboard controls work immediately after loading a level, restarting a level should play the associated sound effect, and the BigDino intro should play.
Affected platform
Online demo
Operating system
Windows 10
Browser
Firefox 104
Additional information
Here are the console log messages generated after clicking level 5 on the level select screen:
AVM2 error: Cannot call null or undefined method ::getRect of class bitmap_black_rock_level_twenty_one
AVM2 error: Cannot call null or undefined method ::getRect of class bitmap_black_rock_level_twenty_one
AVM2 error: Cannot call null or undefined method ::getRect of class bitmap_black_rock_level_twenty_one
Got Cannot call null or undefined method ::getRect of class bitmap_black_rock_level_twenty_one when constructing AVM2 side of movie clip of type bitmap_black_rock_level_twenty_one
AVM2 error: Cannot call null or undefined method ::getRect of class bitmap_scales_one_costume
AVM2 error: Cannot call null or undefined method ::getRect of class bitmap_scales_one_costume
AVM2 error: Cannot call null or undefined method ::getRect of class bitmap_scales_one_costume
Got Cannot call null or undefined method ::getRect of class bitmap_scales_one_costume when constructing AVM2 side of movie clip of type bitmap_scales_one_costume
AVM2 error: RangeError: Index position does not exist in the child list
AVM2 error: RangeError: Index position does not exist in the child list
AVM2 error: RangeError: Index position does not exist in the child list
Got RangeError: Index position does not exist in the child list when constructing AVM2 side of movie clip of type ScalesOne
AVM2 error: Cannot call null or undefined method ::getRect of class bitmap_scales_two_costume
AVM2 error: Cannot call null or undefined method ::getRect of class bitmap_scales_two_costume
AVM2 error: Cannot call null or undefined method ::getRect of class bitmap_scales_two_costume
Got Cannot call null or undefined method ::getRect of class bitmap_scales_two_costume when constructing AVM2 side of movie clip of type bitmap_scales_two_costume
AVM2 error: Cannot access property ::_body of null or undefined
AVM2 error: Cannot access property ::_body of null or undefined
AVM2 error: Cannot access property ::_body of null or undefined
Got Cannot access property ::_body of null or undefined when constructing AVM2 side of movie clip of type ScalesGear
AVM2 error: Cannot access property ::focus of null or undefined
Error dispatching event EventObject(EventObject { type: "addedToStage", class: flash.events::Event, ptr: 0x3153840 }) to handler FunctionObject(FunctionObject(GcCell(Gc { ptr: 0x315337c }))) : "Cannot access property ::focus of null or undefined"
AVM2 error: Cannot call null or undefined method ::getRect of class bitmap_rock_level_twenty_one
AVM2 error: Cannot call null or undefined method ::getRect of class bitmap_rock_level_twenty_one
AVM2 error: Cannot call null or undefined method ::getRect of class bitmap_rock_level_twenty_one
Got Cannot call null or undefined method ::getRect of class bitmap_rock_level_twenty_one when constructing AVM2 side of movie clip of type bitmap_rock_level_twenty_one
AVM2 error: Cannot set undefined property ::_level on Some(Box2D.Dynamics.Joints::b2GearJointDef)
AVM2 error: Cannot set undefined property ::_level on Some(Box2D.Dynamics.Joints::b2GearJointDef)
Error dispatching event EventObject(EventObject { type: "enterFrame", class: flash.events::Event, ptr: 0x2b5d588 }) to handler FunctionObject(FunctionObject(GcCell(Gc { ptr: 0x2b59344 }))) : "Cannot set undefined property ::_level on Some(Box2D.Dynamics.Joints::b2GearJointDef)"