Push Out Solid on Custom Movement Behavior is bugged

  • Problem Description

    Push Out Solid on Custom Movemente Behavior, when overlap a solid wall, work very bad.

    Attach a Capx

    https://drive.google.com/open?id=1r1bqT ... OpXZxG8mZA

    Description of Capx

    a simple .capx to test the experienced issue.

    Steps to Reproduce Bug

    • Move and rotate your sprite with ARROW KEYS along the walls.
    • You can change in realtime the "push out solid MODE", between OppositeAngle and Nearest option, by pressing the "M" Key
    • Press "R" Key at anytime to restart layout.

    Observed Result

    With "Opposite Angle" Mode the sprite sometimes are teleport in a X area or simply disappear of the screen..

    With "Nearest" Mode the sprite sometimes it slows down, others accelerates abnormally, others even reverses the motion direction..

    Expected Result

    the sprite should not teleport or disappear or behave abnormally.

    Affected Browsers

    • NW.js : YES
    • Chrome : YES
    • Internet Explorer and FireFox : ND

    Operating System and Service Pack

    Windows 10 64bit

    Construct 2 Version ID

    Latest Stable R250

  • Hey NN81

    I don't think this is a bug.

    With "Opposite angle" the object is teleported when you rotate it very close to the wall and its angle of movement is pointing away from the wall. The behavior tries to push the sprite in the opposite direction (because that's how "Opposite angle" method works) and as a result it pushes it deeper and deeper into the wall. And finally it pushes it out at the other side of the wall.

    "Nearest" mode works much better if you define correct collision polygon on the sprite. But it can still slow down the sprite, because its purpose is only to prevent overlapping. If you need to maintain constant speed, you will have to do this with events. Or simply use 8-direction

  • Hey NN81

    I don't think this is a bug.

    With "Opposite angle" the object is teleported when you rotate it very close to the wall and its angle of movement is pointing away from the wall. The behavior tries to push the sprite in the opposite direction (because that's how "Opposite angle" method works) and as a result it pushes it deeper and deeper into the wall. And finally it pushes it out at the other side of the wall.

    "Nearest" mode works much better if you define correct collision polygon on the sprite. But it can still slow down the sprite, because its purpose is only to prevent overlapping. If you need to maintain constant speed, you will have to do this with events. Or simply use 8-direction

    yes but in these cases it should prevent to go deep and stop the sprite, otherwise it would be a "push into solid" and not a "push out"

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • No, it does what it supposed to do - if sprite is overlapping a solid, "Opposite" method moves the sprite in the direction opposite to the movement direction, until the sprite no longer overlaps the solid. It's your job not to create such situation when the sprite will be pushed deeper into the wall.

    Custom Movement behavior provides very basic "building blocks" for creating your own movement engine. If you want more advanced events, which will automatically prevent collisions, maintain constant speed etc., then you need to use Platform/8-Direction/Car etc.

  • No, it does what it supposed to do - if sprite is overlapping a solid, "Opposite" method moves the sprite in the direction opposite to the movement direction, until the sprite no longer overlaps the solid. It's your job not to create such situation when the sprite will be pushed deeper into the wall.

    Custom Movement behavior provides very basic "building blocks" for creating your own movement engine. If you want more advanced events, which will automatically prevent collisions, maintain constant speed etc., then you need to use Platform/8-Direction/Car etc.

    maybe you're right but im still not much convinced

  • I think it’s a bug. Or the very least I think the push out actions can be improved. As is, I don’t find the custom movement behavior useful at all with the current push out actions. The push out nearest action is mainly buggy in that if you move perpendicular to a wall the object will move along the wall when all it should do is stop.

  • I think it’s a bug. Or the very least I think the push out actions can be improved. As is, I don’t find the custom movement behavior useful at all with the current push out actions. The push out nearest action is mainly buggy in that if you move perpendicular to a wall the object will move along the wall when all it should do is stop.

    Thank you very much for your support..

    then you need to use Platform/8-Direction/Car etc.

    This issue of "random teleport" just happen to me with 8dir-behavior too..........

    Maybe some "opposite angle" mode is used there too..?

    I am very, very tired and sorry

    I do not think I'm stupid but not even a professional programmer, but I do not understand how everyone else has been planning games for years on C2 without having noticed these BIG problems that make it impossible to work on something elaborate... and if they were found and the staff knew about it, why they have not been improved and/or solved on all those years of life of C2??

    I also had reported anomalies on the 8dir behavior a few months ago and something had improved with new release, but now again......

    Really i am very, very tired and sorry now..

    @Ashley i paid for this tool that has so much potential, but for me it becomes useless if there are still these big flaws, maybe it was better to focus on fix C2 properly instead of spending so much time and energy doing C3..

    As far as I'm concerned, at this point, not only C3 is not even remotely in my thoughts, but I would also be tempted to throw away C2 and ask Scirra to be refunded.

    Seriously, all this is too much for me

    I can not develop ONE single game as i would like, because sistematically I have to bang my head on some big-defects of the tool..

    I am very, very tired and sorry, but this is impossible, this is really too much for me.

    PS if only these defects were perfect, C2 it would undoubtedly be the best 2D gamedev tool of the world.

    It's really a pity, do not fix all this permanently..

  • NN81, Mate, you are overreacting. Chill a bit, have a drink, it's a New Year!

    Official behaviors usually work fine until you start "abusing" them. If your 8Direction teleports through solids, this means that you are stretching the limitations of this behavior. Maybe your speed is too high or collision polygons are all wrong or you added some events which interfere with the behavior's collision-prevention mechanics.

  • NN81, Mate, you are overreacting. Chill a bit, have a drink, it's a New Year!

    Official behaviors usually work fine until you start "abusing" them. If your 8Direction teleports through solids, this means that you are stretching the limitations of this behavior. Maybe your speed is too high or collision polygons are all wrong or you added some events which interfere with the behavior's collision-prevention mechanics.

    in all my activity i always use boounding box collision (and player sprite pinged on it), center origin points and perfect pixel object position (1x1grid on the editor) ALL THIS always for prevent issues. But this never seems to be enough

    now I've also tried that 8dir STOP action and REVERSE action seems don't work.

    I have to throw my time doing .capx to isolate problems to report them insted of develope my games..

Jump to:
Active Users
There are 1 visitors browsing this topic (0 users and 1 guests)