Is there a bug in the new "Tile Metadata" feature of Stencyl v3.2 ?

LIBERADO

  • *
  • Posts: 2720
I really am very interested in the new Tile Metadata feature of Stencyl v3.2, but after testing it, I find two important issues:

ISSUE 1: If I place the code in the actor, I can get the tile metadata ONLY when the actor is jumping and falling on tiles, but if the actor is dragged on tiles, then the tile metadata info is NOT updated. See this sample:

<a href="http://www.filz.us/files/b72ab7c4/7db/Tile_Metadata.swf" target="_blank" class="new_win">http://www.filz.us/files/b72ab7c4/7db/Tile_Metadata.swf</a>

ISSUE 2: If I place the code in the scene instead of in the actor, I get this error: (please, see the attached image)
I'm spanish, excuse me for my bad English.
I'm not a private teacher. Please, post your questions in the public forum.

ETHproductions

  • *
  • Posts: 430
I can confirm both bugs.

I believe that the first bug is caused by the tiles being counted as one solid collision block; thus, the collision doesn't update unless it is hit again separately. I'm not sure exactly how this works, though; maybe an expert would have more of an idea?

The second bug happens because the tile data block looks for the tile that Self collided with. As there is no Self actor in a scene, this causes an error. This problem could probably be fixed by adding a actor 1/actor 2 dropdown to the block.

BTW, I think your English is great. ;)
Fontstruct - Stencyl - Website (in progress)

Proud Member of the League of Idiotic Stencylers; doing things in Stencyl that probably shouldn't be done.

captaincomic

  • *
  • Posts: 6108
I believe that the first bug is caused by the tiles being counted as one solid collision block; thus, the collision doesn't update unless it is hit again separately. I'm not sure exactly how this works, though; maybe an expert would have more of an idea?
Yes, I noticed this too when working with the "for each collision point..." wrapper. I'm not sure if it's a bug on our side or just the way Box2D works, but it doesn't update the collision points (and the tile data) when sliding/dragging over a surface.

LIBERADO

  • *
  • Posts: 2720
I believe that the first bug is caused by the tiles being counted as one solid collision block; thus, the collision doesn't update unless it is hit again separately.
I'm not sure if it's a bug on our side or just the way Box2D works, but it doesn't update the collision points (and the tile data) when sliding/dragging over a surface.
I think it is a bug that can be fixed (and I hope it is fixed, please) as well as the ID getters of the well-known Tile API have NOT this inefficient limitation.

BTW, I think your English is great. ;)
;) Thanks.

« Last Edit: December 13, 2014, 09:29:44 am by LIBERADO »
I'm spanish, excuse me for my bad English.
I'm not a private teacher. Please, post your questions in the public forum.

captaincomic

  • *
  • Posts: 6108
The second issue should be fixed now in the latest private build.

Blob

  • *
  • Posts: 721
I ran into the first issue recently. Hoping this gets fixed.

Jon

  • *
  • Posts: 17524
It's a tricky one to address because that's how Box2D works. When you collide with something and slide over it, it doesn't register that as a new collision for performance and logical reasons. But doesn't Box2D update the locations of the contact points to address this?  If so, that could be where we could pull in the metadata and update it.

Mineat

  • Posts: 376
Try this! I thought it up in a matter of seconds and coded it as a possible workaround.

 :-\ You may want to back up your folder while using it.  Also tinker with it to include the bottom of the actor.

LIBERADO

  • *
  • Posts: 2720
But doesn't Box2D update the locations of the contact points to address this?  If so, that could be where we could pull in the metadata and update it.
:) Thanks you. Hopefully this will be possible.
It would be a very useful feature for making some kinds of games.
I'm spanish, excuse me for my bad English.
I'm not a private teacher. Please, post your questions in the public forum.

LIBERADO

  • *
  • Posts: 2720
Same issue with the blocks to get the X/Y of Collision Points.
They don't constantly update the info of the coordinates of the collision points.

I hope these features will be improved over time.  :)

<a href="http://www.filz.us/files/9d5d0e83/432/Coche_con_Distance_Joints.swf" target="_blank" class="new_win">http://www.filz.us/files/9d5d0e83/432/Coche_con_Distance_Joints.swf</a>
I'm spanish, excuse me for my bad English.
I'm not a private teacher. Please, post your questions in the public forum.

Justin

  • *
  • Posts: 4717
I've committed a fix for the collision point not updating.
For Live Support: Join our discord server and ping me @justin.
I'm most often available between 10am and 10pm Japan time. (GMT+9)

LIBERADO

  • *
  • Posts: 2720
I've committed a fix for the collision point not updating.
Now it works really well. Thank you very much!

AFTER THE FIX:
<a href="http://www.filz.us/files/9dd9256b/c20/Coche_con_Distance_Joints_fixed.swf" target="_blank" class="new_win">http://www.filz.us/files/9dd9256b/c20/Coche_con_Distance_Joints_fixed.swf</a>

« Last Edit: February 16, 2015, 01:45:02 pm by LIBERADO »
I'm spanish, excuse me for my bad English.
I'm not a private teacher. Please, post your questions in the public forum.

captaincomic

  • *
  • Posts: 6108