solid to rockets but non-solid to players?

Discussion in 'Mapping Questions & Discussion' started by Grup, Sep 5, 2010.

  1. Grup

    Grup L1: Registered

    Messages:
    19
    Positive Ratings:
    1
    Is it possible to make a brush solid to projectiles and bullets but not solid to players? and if so, how?

    Essentially this is for some small window detail that I don't want players to get caught on, but I do want bullets and rockets to hit. The alternative is to player clip the area around this, but this would be easier if possible.
     
    Last edited: Sep 5, 2010
  2. Beetle

    Beetle L9: Fashionable Member

    Messages:
    627
    Positive Ratings:
    141
    tried the block bullet texture? not sure if it also blocks players

    edit: Nvm. Don't listen to me. Apparently it is solid to players.
     
    Last edited: Sep 5, 2010
  3. honorum646

    honorum646 L6: Sharp Member

    Messages:
    335
    Positive Ratings:
    66
    Use a block bullet and a block rocket brush. (Two separate brushes)
     
  4. A Boojum Snark

    aa A Boojum Snark Toraipoddodezain Mazahabado

    Messages:
    4,769
    Positive Ratings:
    5,535
    no
     
  5. Lancey

    aa Lancey Currently On: ?????

    Messages:
    3,076
    Positive Ratings:
    1,314
    Blockbullets is the only texture out there that will block rockets and their resulting explosions while not splitting visleaves. Unfortunately, it's also solid to players.

    What you could do is tie a brush to func_clip_vphysics and use a filter_activator_class set to the Player entity, negated of course. The problem is that it will block everything that isn't a player, which is probably a positive situation for you.
     
    Last edited: Sep 5, 2010
  6. A Boojum Snark

    aa A Boojum Snark Toraipoddodezain Mazahabado

    Messages:
    4,769
    Positive Ratings:
    5,535
    That would only block vphysics objects, which players are not, and would already pass through. The only vphysics in TF2 are building debris, downed weapons, grenades, and stickies.
     
  7. Lancey

    aa Lancey Currently On: ?????

    Messages:
    3,076
    Positive Ratings:
    1,314
    Derp my mistake. Can you exclude the player from colliding with a func_brush, or only NPCs?
     
  8. A Boojum Snark

    aa A Boojum Snark Toraipoddodezain Mazahabado

    Messages:
    4,769
    Positive Ratings:
    5,535
    Only NPCs.
     
  9. Draco18s

    Draco18s L9: Fashionable Member

    Messages:
    622
    Positive Ratings:
    136
    If it helps, I think rockets are considered to be a "ray" type object (rockets are 100% accurate and travel in a strait line).

    AFAIK there is no way to actually block them and still let the player pass through.
     
  10. Lancey

    aa Lancey Currently On: ?????

    Messages:
    3,076
    Positive Ratings:
    1,314
    The only thing I can think of is func_nogrenades. Since I'm not there to test it, I don't know if it'll work at all, and the VDC seems to indicate that it won't destroy the rockets (or grenades.) Not to mention it will do fuck all for bullets.

    There's no such thing. It's just an entity that moves in a straight line and explodes when it touches something. No special treatment.
     
  11. A Boojum Snark

    aa A Boojum Snark Toraipoddodezain Mazahabado

    Messages:
    4,769
    Positive Ratings:
    5,535
    Well now actually there are rays, but this still doesn't get us to where we want and they aren't quite what you said. Displacements can have physics, hull and ray collisions independently disabled.

    Physics: grenades, stickies, building debris, dropped weapons, jarate, baseball (forgot those two)
    Hull: players, arrows, sandviches (thrown)
    Ray: rockets, flames, flares, bullets

    Then we have needles, which have always been the weirdest thing. The VISIBLE needle is a ray, but the PHYSICAL needle that does damage is a hull.

    So using a toolsinvisibledisplacement textured displacement with hull collision disabled you could almost achieve the effect you want, but a few weapons would still pass through it.