lennaert : Nice solution. I would love to see, how you did the z-index part. On the other hand I am not sure you can handle walls/furniture on different levels colliding/overlapping with both players at the same time, when the lower one has to pass through, but not the upper one. Maybe yes, then it would be even more exciting to see your solution. I added the multilayer-feature aswell, as you noted. Feel free to optimize or comment on anything you notice.
Everade: Did you take a look at my stuff at all? I really hope it helps you man (Wenn ihr hilfe gebrauchen könnt, meldet euch einfach mal gerne bei mir...)
Passing beneath/above object (being on different floors)
Finally all the basic features are included. Not using solid-behavior or pushout absicly at all, since you have to be able to pass under walls, which must be colliding with the player on the same floor. (There still can be some reduced even now, eg "guides"). Players can just swap places, like with the wall being put in the foreground or background according to any layers, which is not implemented yet, but easy from here.
Obviously, you can work more with collisions, also adding solid behavior -- which is more stable and might be necessary especially on slow devices to prevent passing through walls when slowing down to few ticks per sec. --, and just use this method when both players are on different floors, to disable solid temporarily, but enable the collision-control-lock. But I don't know, how many objects you are going to end up with.. it's always good not to have too many collisions, especially, if you plan to play it on phones/tablets. So its a balancing...
Formula, Family and Harmony
Also, it is just a sketch, I'm sure it can be optimized a bit. Sorry for any longer Formula, but I try to work with families and relative values, to build up a proper engine with all object types are being easily replaced or added easily, without further coding basically, so anyone can use it to start with. Of course, most of them will be registered, to provide some more transparency, (as I did already in this file). I am also thinking of putting them as a collection online somewhere in this forum, since I really enjoy developing different ones and got a bunch of them by now.
Player A = AWSD
player B = L/R/UP-ARROWS