ruffle-rs / ruffle

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

BOXHEAD ROOMS: Invisible sprites in one direction. No sprite-background objects collisions #11379

Open perelowski opened 1 year ago

perelowski commented 1 year ago

Describe the bug

Hello. I have identified two bugs with Ruffle player with this example game: https://funkypotato.com/boxhead-the-rooms/

I have recorded this behavior - please see this YT video: https://youtu.be/sXwmRl3aiGg

You can see two problems:

1) Invisible sprite of the main character, when moving to the right. 2) No sprite-background objects collisions for some objects - the main character walks through and over explosive barrels.

The collisions with sprites are also weird, you can shoot zombies, they kill you when you touch them, but you can walk through them as well.

Expected behavior

Ad 1) The main character sprite should be visible all the time Ad 2) The barrels should be blocking the way and not let to walk through them

Affected platform

Self-hosted version

Operating system

Windows 7, 10, 11 and Mac Os X tested.

Browser

Firefox, Chrome, Opera, Safari

Additional information

No response

Lord-McSweeney commented 1 year ago

Note that the specific sprite missing for issue # 1 is the "character walking, facing right"- the character appears when pressing right and releasing it.

There are several warnings:

ERROR core/src/library.rs:215 Tried to instantiate non-registered character Player_Idle1
339.js:802 WARN core/src/avm1/globals/movie_clip.rs:667 Unable to attach 'Player_Idle1'
339.js:802 WARN core/src/avm1/globals/bitmap_data.rs:105 Invalid BitmapData size: 0x0
7339.js:802 WARN core/src/tag_utils.rs:423 Unknown tag code: 253
339.js:802 ERROR core/src/library.rs:200 Tried to instantiate non-registered character ID 395
339.js:802 ERROR core/src/display_object/movie_clip.rs:1617 Unable to instantiate display node id 395, reason being: Character id doesn't exist
339.js:802 ERROR core/src/library.rs:200 Tried to instantiate non-registered character ID 397
339.js:802 ERROR core/src/display_object/movie_clip.rs:1617 Unable to instantiate display node id 397, reason being: Character id doesn't exist
339.js:802 ERROR core/src/library.rs:200 Tried to instantiate non-registered character ID 399
339.js:802 ERROR core/src/display_object/movie_clip.rs:1617 Unable to instantiate display node id 399, reason being: Character id doesn't exist
339.js:802 ERROR core/src/library.rs:200 Tried to instantiate non-registered character ID 401
339.js:802 ERROR core/src/display_object/movie_clip.rs:1617 Unable to instantiate display node id 401, reason being: Character id doesn't exist
339.js:802 ERROR core/src/library.rs:200 Tried to instantiate non-registered character ID 403
339.js:802 ERROR core/src/display_object/movie_clip.rs:1617 Unable to instantiate display node id 403, reason being: Character id doesn't exist
339.js:802 ERROR core/src/library.rs:200 Tried to instantiate non-registered character ID 405
339.js:802 ERROR core/src/display_object/movie_clip.rs:1617 Unable to instantiate display node id 405, reason being: Character id doesn't exist
339.js:802 ERROR core/src/library.rs:200 Tried to instantiate non-registered character ID 407
339.js:802 ERROR core/src/display_object/movie_clip.rs:1617 Unable to instantiate display node id 407, reason being: Character id doesn't exist
339.js:802 ERROR core/src/library.rs:200 Tried to instantiate non-registered character ID 409
339.js:802 ERROR core/src/display_object/movie_clip.rs:1617 Unable to instantiate display node id 409, reason being: Character id doesn't exist
7339.js:802 WARN core/src/tag_utils.rs:423 Unknown tag code: 253
339.js:802 ERROR core/src/library.rs:215 Tried to instantiate non-registered character Player_FlameThrower_WalkAim
339.js:802 WARN core/src/avm1/globals/movie_clip.rs:667 Unable to attach 'Player_FlameThrower_WalkAim'
339.js:802 WARN core/src/avm1/globals/bitmap_data.rs:105 Invalid BitmapData size: 0x0
339.js:802 ERROR core/src/library.rs:215 Tried to instantiate non-registered character Player_FlameThrower_StandAim
339.js:802 WARN core/src/avm1/globals/movie_clip.rs:667 Unable to attach 'Player_FlameThrower_StandAim'
339.js:802 WARN core/src/avm1/globals/bitmap_data.rs:105 Invalid BitmapData size: 0x0
2339.js:802 WARN core/src/tag_utils.rs:423 Unknown tag code: 253
339.js:802 ERROR core/src/library.rs:215 Tried to instantiate non-registered character Player_Tazor_WalkAim
339.js:802 WARN core/src/avm1/globals/movie_clip.rs:667 Unable to attach 'Player_Tazor_WalkAim'
339.js:802 WARN core/src/avm1/globals/bitmap_data.rs:105 Invalid BitmapData size: 0x0
339.js:802 ERROR core/src/library.rs:215 Tried to instantiate non-registered character Player_Tazor_StandAim
339.js:802 WARN core/src/avm1/globals/movie_clip.rs:667 Unable to attach 'Player_Tazor_StandAim'
339.js:802 WARN core/src/avm1/globals/bitmap_data.rs:105 Invalid BitmapData size: 0x0
10339.js:802 WARN core/src/avm1/activation.rs:966 Cannot delete property mParent from Undefined
339.js:802 WARN core/src/stub.rs:126 Encountered stub: AVM1 BitmapData.applyFilter()
339.js:802 WARN core/src/tag_utils.rs:423 Unknown tag code: 253
339.js:802 WARN core/src/avm1/globals/bitmap_data.rs:105 Invalid BitmapData size: 0x0
339.js:802 WARN core/src/avm1/activation.rs:966 Cannot delete property mParent from Undefined
339.js:802 ERROR core/src/library.rs:215 Tried to instantiate non-registered character Effect.Ammo
339.js:802 WARN core/src/avm1/globals/movie_clip.rs:667 Unable to attach 'Effect.Ammo'
339.js:802 WARN core/src/avm1/activation.rs:1055 Cannot enumerate Undefined
339.js:802 WARN core/src/avm1/globals/sound.rs:420 Sound.start: No sound is attached
339.js:802 WARN core/src/avm1/activation.rs:1055 Cannot enumerate Undefined

Which possibly cause these two: Cannot enumerate Undefined Cannot delete property mParent from Undefined

perelowski commented 10 months ago

Hello. Just refreshing this ticket - it's over 7 months now and the bug still persists.