Creating a hadouken

Discussion in 'Mapping Questions & Discussion' started by PenPen, Apr 24, 2008.

  1. PenPen

    PenPen L5: Dapper Member

    Messages:
    207
    Positive Ratings:
    69
    Hello all, I'm a new guy in the forums, nice to meet you all! I actually ran into a point where I had no idea what I am supposed to do with a feature that I'm thinking about adding to my map.

    Basically, in the map there will be triggered projectiles but I want it to deal damage to whomever it's hitting. The idea is kinda like a hadouken in Street Fighter but actually done in TF2...and it's supposed to be moving forward on the ground as well.

    Currently I made a test block that will explode and break (thru func_breakable and env_explode since the func_breakable doesn't deal damage when it breaks) when it gets dealt enough damage, and gets pressured. I chose the "break on touch" as well, but when the player's touching the block (it breaks when the player's standing on it), it doesn't blow up. So that's one problem.

    The other thing I want is to have the projectile to keep moving forward without stopping unless it gets touched by something (someone or a wall that's in its way), or get damaged, and explode. I looked up func_train and also path_track as well. I could make it go back and forth but I only want to make this a one-way experience for the projectile (which will always end with the projectile exploding). How would I do that?

    Third problem is to create this object and execute the moving forward thing every time a button/trigger is executed. Is there a way for this to happen?

    I'm still relatively new to Hammer but I'm willing to give anything a try. Many thanks for the help!
     
  2. Pseudo

    Pseudo L6: Sharp Member

    Messages:
    319
    Positive Ratings:
    149
    To create an item that respawns you'll need a point_template and a env_entity_maker. The env_entity_maker also has options for launching the spawned object as a projectile. You will probably want the projectile to be a func_physbox.

    What you're attempting to create is similar to TheBladeRoden's artillery gun, you can download that and see how it's done.
     
    • Thanks Thanks x 1
  3. PenPen

    PenPen L5: Dapper Member

    Messages:
    207
    Positive Ratings:
    69
    Thanks! Will try that later today.
     
  4. PenPen

    PenPen L5: Dapper Member

    Messages:
    207
    Positive Ratings:
    69
    Right, currently I got the projectile working (and breaking upon hitting a wall), but there's two problems that I can't seeming solve yet...

    The env_explosion doesn't move along with the projectile even though I set the projectile as the parent. It explodes at where I'm putting it in my vmf file. Is using func_physbox's own explosion settings a valid alternative?
    It doesn't seem to break when it touches the player as well. Is there any way to make this work?
     
  5. Pseudo

    Pseudo L6: Sharp Member

    Messages:
    319
    Positive Ratings:
    149
    Using the func_physbox's explode settings will cause damage but I'm not sure if it will have the effect and noise that you might want. Is the explosion happening as soon as the projectile is fired? You may want to have it triggered by the physbox's OnBreak. Also check that it is parented correctly. Make sure that there is only one entity with that name.

    Check the flags of the physbox. Is "break on touch" checked? If that doesn't work, you could parent a trigger to the projectile and have it Break OnStartTouch.
     
  6. PenPen

    PenPen L5: Dapper Member

    Messages:
    207
    Positive Ratings:
    69
    It's breaking right when the projectile hits the wall since I got "break on touch" on, then the explosion happens because it breaks. So I got the concept right, but the explosion isn't moving along with the projectile. It should be happening at the wall at least.

    For the time being I've set the projectile to be launched every 2 seconds, so basically now it explodes at that same spot where I placed the env_explosion.

    I'll try your suggestions, hopefully it'll work better this time around. Will also fool around with physbox explosion settings too.
     
    Last edited: Apr 26, 2008
  7. PenPen

    PenPen L5: Dapper Member

    Messages:
    207
    Positive Ratings:
    69
    Well apparently I forgot to put the explosion along inside the point_template (stupidity at work). So now at least it's launched as part of the projectile. But it doesn't blow up.

    I can set a delay after the env_entity_maker's OnEntitySpawned, but the explosion happens midway, which actually destroys the projectile itself. So that's not good.

    But when I set the projectile to break and the env_explosion to respond to the breaking by blowing up, nothing happens...not even if I blow up the projectile midway.

    And func_physbox's explosion settings aren't even working with whatever values I entered. So that's that for the experiment.

    Here's a copy of my VMF file just for the heck of it (Rapidshared): Linky linky
     
    Last edited: Apr 26, 2008