Ignoring specific solids using the platform behavior...

Discussion and feedback on Construct 2

Post » Thu Jan 21, 2016 6:25 pm

@JackieChan - Excellent, thanks for posting that. I figured I would overlook something. Changing the op to reflect this. I am also adding your link to the op for the edited behavior file if that is okay.
Image
B
33
S
11
G
2
Posts: 563
Reputation: 5,141

Post » Fri Jan 22, 2016 12:39 am

Yeah you can use my link. I don't mind.
B
10
S
4
G
6
Posts: 82
Reputation: 3,627

Post » Wed Feb 17, 2016 12:03 pm

This thread should be famous, can't thank you enough again @ruskul for actually figuring this thing out!
B
41
S
12
G
14
Posts: 1,117
Reputation: 11,253

Post » Thu Mar 17, 2016 7:01 am

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?
B
41
S
12
G
14
Posts: 1,117
Reputation: 11,253

Post » Fri Mar 18, 2016 10:46 pm

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) ?
B
49
S
15
G
6
Posts: 531
Reputation: 7,189

Post » Sat Mar 19, 2016 7:01 am

TGeorgeMihai wrote: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?
B
41
S
12
G
14
Posts: 1,117
Reputation: 11,253

Post » Sat Mar 19, 2016 1:22 pm

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.
Scirra Founder
B
387
S
230
G
88
Posts: 24,249
Reputation: 192,450

Post » Sat Mar 19, 2016 6:09 pm

Ashley wrote: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:

+ if basePlayerdetector is not overlapping groundFloortiles
+ PlayerObject is falling
= Simulate platform behavior collides with obstacle


Thus, this effectively happens:

+ 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:

+ if basePlayerdetector is not overlapping groundFloortiles
+ PlayerObject is falling
= Set staircase to solid enabled


Thus, this too happens:

+ 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? :o

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

:oops:

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.
B
41
S
12
G
14
Posts: 1,117
Reputation: 11,253


Post » Sun Mar 20, 2016 4:36 pm

Ashley wrote: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?
B
41
S
12
G
14
Posts: 1,117
Reputation: 11,253

PreviousNext

Return to Construct 2 General

Who is online

Users browsing this forum: No registered users and 6 guests