func_nogrenades, trigger_hurt not working fully

Discussion in 'Mapping Questions & Discussion' started by Comma, Aug 6, 2018.

  1. Comma

    Comma L1: Registered

    Messages:
    6
    Positive Ratings:
    0
    On my jump map I have used these three entities multiple times; However two of the stages the func_nogrenades does not work at all in game and rocket will explode normally on the wall behind it, with seemingly no reason. Every where else it is working as intended and I cannot find why.

    The trigger_hurt also seems to have stopped working fully, as I was able to accidentally kill myself when testing the stage, although it was regening my health somewhat, it was not doing it fast enough for the damage caused by the rocket jumping. (It is at -2000 damage and damagecap, but seems to only apply this every 4 seconds or so)

    Any ideas as to why this might be happening?
     
  2. Unregistered HyperCam 2

    Unregistered HyperCam 2 L3: Member

    Messages:
    124
    Positive Ratings:
    4
    iirc this is how func_nogrenades functions, it allows the rockets / grenades to pass through but blocks damage and rocket jumps inside its area.
    consider using trigger_remove or a func_physbox (with specific settings that I do not remember exactly which allow players to pass through but not projectiles) depending on your desired outcome of the situation, make the projectiles disappear for the former or make them explode on contact for the latter.
    Trigger_hurt iirc applies damage (in this case healing) every couple of seconds(0.5 I think?) and if the player leaves its area it makes sure to deal it once again, I believe point_hurt has an option to decide how quickly it applies its damage (again, in this case healing) and might work for you.
     
    Last edited: Aug 7, 2018
  3. Comma

    Comma L1: Registered

    Messages:
    6
    Positive Ratings:
    0
    Looking back over my func_nogrenades that weren't working I noticed they didn't fully overlap the walls so there was a space they would explode in. I had assumed the func_nogrenades deleted rockets but turns out they don't.

    Still, the problem of the health I've now managed to reduced to the problem being taking too much damage at once.

    Is there any way to increase health - etc. to 900hp - and apply this constantly?
     
  4. Unregistered HyperCam 2

    Unregistered HyperCam 2 L3: Member

    Messages:
    124
    Positive Ratings:
    4
    I believe it is impossible to increase the player max health beyond its default value, However, you can set the player's health to a value as overheal and then change the overheal decay rate using a trigger_add_or_remove_tf_player_attributes entity. Basically you'll have to use a logic_timer that fires an AddOutput input with the parameter "health 900" every 2 seconds or so to "player" (will send the input to all players), and have the players touch the trigger_add_or_remove_tf_player_attributes trigger with the "overheal decay disabled" attribute.
    Hopefully the "overheal decay disabled" attribute isn't borked and will work otherwise you could try "overheal decay penalty" and "
    overheal decay bonus" and if those don't work you'll have to reduce the logic_timer's refire rate to a lower value but that might cause lag.