Zebbi's Recent Forum Activity

  • Problem Description

    The platform movement is in desperate need of an event that disables collision filtering to allow for individual instances of an object using the movement to react differently to solids. Disabling/Enabling solids for an object is a global change of the solids state, rather than an objects "interpretation" of the solids state.

    Attach a Capx

    https://www.dropbox.com/s/3ezha00yp7da5 ... tairs.capx

    Description of Capx

    Shows a demo of a staircase with enemies, the player and the enemies all using the platform movement.

    Instead of "stairLtoRup" > Set Solid Disabled, I need an event that says: "PlayerObject" > Disable Collision Filtering that works per instance (so, if there's multiple enemies with platform movements, they can each have their collision filterings disabled, and it won't affect the other enemies of the same object.

    Also, this example could be written so that collisions are only detected if certain conditions are met, in which case this example could be written in reverse so that collisions only come on rather than off if certain conditions are met

    Steps to Reproduce Bug

    • Move player with arrow keys
    • Jump off/fall off stairs to ground
    • Notices how enemies react differently to the stairs depending on the players state.

    Observed Result

    The staircase's state changes to accommodate the player, whereas the players reaction to the stairs should only affect the player and not the other platform movement objects.

    Expected Result

    I would like to have instead of "stairLtoRup" > Set Solid Disabled, I need an event that says: "PlayerObject" > Disable Collision Filtering that works per instance (so, if there's multiple enemies with platform movements, they can each have their collision filterings disabled, and it won't affect the other enemies of the same object.

    Affected Browsers

    • Chrome: (YES/)
    • FireFox: (YES/)
    • Internet Explorer: (YES/)

    Operating System and Service Pack

    Windows 7 Sp3

    Construct 2 Version ID

    r224

  • Can you file a bug report requesting this with a demo? It will most likely be lost in the forums otherwise (as looks like has already happened before!)

    Okay Ashley , I'll throw together an example of how it could be done with a comment denoting where such an event would be useful. If anyone else here has any other examples that could be useful in this request, chime in...

  • its likely something will not work with android. you might get lucky. it sounds like you have a good solid method for doing things. I definitely have seen things work for one and fail on the other (ios vs android) so anything is possible and you won't know till you try.

    Might be good for you to make a tutorial that just outlines what you said but more explicit if/when you have time. I know I'd be willing to give XDK another look with some new insight on the subject. I've just banged my head against the XKD wall long enough to not be eager to come running back.

    Though I'm still pretty darn happy with Cocoon IO overall. MUCH smaller APK's alone are worth the price of admission. 2mb+game vs crosswalks 19mb+game

    Really? You can get them down that small with cocoon?

  • We specifically recommend you do not do this. Your modified platform behavior will not stay up to date with future official changes to the platform behavior.

    I'm not quite clear what the changes are for and why they are necessary - but it would be far better to update the official behavior to incorporate this. Having said that, the platform behavior is very complicated and we've had a lot of trouble with even minor changes causing a cascade of other bug reports afterwards. So this may not be easy to integrate.

    So, Ashley can we expect a "disable collision filtering" event in a forthcoming C2 update?

  • Well, wasn't expecting to find this. This looks good, though I think the lack of being able to double-jump after wall-jumping is jarring, but I've also got some recommendations:

    - Crouching... Erm, I don't think that's really needed in a behaviour. All it really is is mainly just a change in animation and collision and, depending on whether the player can move while doing so, not move or just move slowly. Nothing a couple of variables can't do. Basic as hell.

    Candescence2013-04-21 14:58:20

    Sorry to quote this three years later, but it would be quite nice to be able to set a crouch/crawl height in the behavior settings, then that could just automatically be applied to the actual platform behavior, so no more events for this, you just set how low you crouch in pixels, draw your animations to match and away you go, the crawling collisions are handled for you.

  • Wish I was smart enough to add selective solid collision filtering to this :/

  • Um, what's wrong with number 2?

    If it works with physics, it works with all behaviors that use solid.

    Ooh making our own platform movement with physics, both fun and an effective use of processor resources.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Ashley further reading:

  • We specifically recommend you do not do this. Your modified platform behavior will not stay up to date with future official changes to the platform behavior.

    I'm not quite clear what the changes are for and why they are necessary - but it would be far better to update the official behavior to incorporate this. Having said that, the platform behavior is very complicated and we've had a lot of trouble with even minor changes causing a cascade of other bug reports afterwards. So this may not be easy to integrate.

    Oh yes, I've seen recommendation against fiddling with official plugins, but must needs and all.

    Okay, Ashley let me explain. In Fusion 2.5, The Games Factory or Multimedia Fusion (remember these?)

    I might decide to have a staircase for my player to either walk past or walk up, depending on if he falls on it (lands on stair) or walks past it (stays on ground floor).

    Now, obviously the jump-through behavior might work here, but it's buggy and doesn't like slopes, etc, etc, etc.

    So I might have a detector set to the players feet, if it it overlapping the ground-floor and I touch the stairs, I go up them, if it's NOT overlapping the ground-floor and I touch them, I go up them.

    Here's where Multimedia Fusion is cool! I just disable collisions on my player character when I touch the stairs by adding a condition whereby:

    [quote:3labwl9a]+ if basePlayerdetector is not overlapping groundFloortiles

    + PlayerObject is falling

    = Simulate platform behavior collides with obstacle

    Thus, this effectively happens:

    [quote:3labwl9a]+ if basePlayerdetector IS overlapping groundFloortiles

    + PlayerObject is walking

    = DON'T Simulate platform behavior collides with obstacle

    Unfortunately, this is where Construct2 has difficulty since it handles all of it's object collisions based upon the OBJECTS solid state, rather than the players.

    Doesn't seems like a problem though, does it? I can after all just do this in Construct2:

    [quote:3labwl9a]+ if basePlayerdetector is not overlapping groundFloortiles

    + PlayerObject is falling

    = Set staircase to solid enabled

    Thus, this too happens:

    [quote:3labwl9a]+ if basePlayerdetector IS overlapping groundFloortiles

    + PlayerObject is walking

    = Set staircase solid disabled

    However! What happens when we have enemies that want to walk up and down stairs?

    What happens when we have multiplayer characters that want to walk up and down stairs?

    So, we now have only the player character to decide if a staircase should be walked up or not, rather than every individual character being able to walk and down a staircase at will.

    Simply because C2 handles the staircase's solidity, and Multimedia Fusion handles the individual NPC's collisions with the object.

  • This looks very promising

    Ashley What do you think about this workaround ? Can you implement it in the official plugins ? Would it have negative effects (bugs/glitches) ?

    I think he blessed it to some extent judging by ruskuls conversations with him?

  • Forgot to ask, or I'm being forgetful, does this work per instance or per object?

    edit: what I mean is Ruskul can you test for an instance of an object as usual, then have the update apply only to that specific instance rather than all of them?

  • >

    > > really whats wrong with cocoon.io !?!?!?!??!!?!

    > >

    >

    > Nothing much, I get 60fps using physics (chipmunk) everyTicks and a couple of loops.

    >

    Could you show me your example and your device ?

    I've not finished it yet, but I tested on a Sony Xperia Z and a Nexus 7 2013.

Zebbi's avatar

Zebbi

Member since 20 Jan, 2014

None one is following Zebbi yet!

Connect with Zebbi

Trophy Case

  • 10-Year Club
  • x3
    Coach One of your tutorials has over 1,000 readers
  • Email Verified

Progress

12/44
How to earn trophies