Help with control points

Discussion in 'Mapping Questions & Discussion' started by Poisontrigger, Feb 13, 2015.

  1. Poisontrigger

    Poisontrigger L1: Registered

    Messages:
    17
    Positive Ratings:
    2
    Hello, I've recently started to make maps for TF2, just about a month ago so forgive me if this has been asked before.

    I was thinking of a gimmick for a KOTH map. Auxiliary control points or extra control points that won't affect the core gameplay of KOTH. These control points would for example open up some closed doors/routes to the team that captured it and close some to the opposite team, something like that.

    I'm asking how can I do this I can't seem to make it possible.

    side question: what does property name: "Time-based point value for RED/BLU" do on the team_control_point entity?


    I also have a gamemode idea, it's similar to Lockdown from the game Spiral Knights where the two teams have to capture control points(3 or 5, depending on map) and for each cap the team has they get points in regular intervals depending on how many control points they own. The round ends when the timer runs out(highest scoring team wins) or one team reaches the point quota(500 or 900) then they win. If both teams exceed the point quota the higher scoring team wins e.g. 910 - 920 or 500 - 505.

    Can this kind of gameplay be done?
     
  2. henke37

    aa henke37

    Messages:
    1,832
    Positive Ratings:
    420
    The biggest problem with the idea is that players don't like waiting. A close second is the need for a custom hud solution, but that's not too difficult to deal with.
     
  3. Poisontrigger

    Poisontrigger L1: Registered

    Messages:
    17
    Positive Ratings:
    2
    I managed to make the extra control points work along with the KOTH point itself but when capping the extra points it prompts overtime when it shouldn't. How can I make it so that ONLY the KOTH point does overtime?

    The gamemode play style is similar to cp_standin but A LOT more fast paced, when you cap points it doesn't add time, just a static 8 minutes or so and all control points are already unlocked. You get 5 points every 5 second for each cap you own. Capture times will be MUCH shorter than that of cp_standin. The minimum time on a 5cp map would be 3 minutes and on a 3cp map ~2 minutes 40 seconds. (assuming if all the points are capped within the first 5 seconds of the round). So I don't think waiting would be a big issue unless if one team spawncamps the other team for most of the match. That's a problem with KOTH maps as well most notably Harvest. As for the HUD, I guess I can get around to that.
     
  4. Coding Ethan

    Coding Ethan L2: Junior Member

    Messages:
    63
    Positive Ratings:
    44
    I think both ideas can be done, it's just will it be fun?
    TF2 is usually better with fast paced action.

    For your first idea, you just need self-recursive cps that have outputs to doors, just make sure people cannot get trapped. What would the routes open up, flanking routes for the team to keep action up and the main point active?

    For the second idea, I guess you could use game_win or whatever and trigger it when a math_counter reaches a certain number.
     
  5. Poisontrigger

    Poisontrigger L1: Registered

    Messages:
    17
    Positive Ratings:
    2
    I did managed to get most of it working but only thing is that the extra control points prompt overtime, even when the main point doesn't. It can lead to people literally buying time. I haven't thought up of a map design just yet, I want to make sure the main elements are working 100% first.

    Could you elaborate on this a bit more? Since I'm not that good on how point entities should interact with each other to achieve this.
     
    • Thanks Thanks x 1
  6. henke37

    aa henke37

    Messages:
    1,832
    Positive Ratings:
    420
    It's quite obvious, math_counter to store the points, logic_compare to check for reaching the goal value, game_round_win to let the game know when its been won. You can use a logic_timer as the event source for updating the math_counters.
     
    • Thanks Thanks x 1
  7. Coding Ethan

    Coding Ethan L2: Junior Member

    Messages:
    63
    Positive Ratings:
    44
    and then it is just getting the state of the cps.
     
    • Thanks Thanks x 1
  8. Poisontrigger

    Poisontrigger L1: Registered

    Messages:
    17
    Positive Ratings:
    2
    Awesome! Things are working as intended now. Thanks for the help! :thumbup:

    Although each control point interval times are independent of each of each other. it'll make stalemates a lot less common. Which I suppose is a good thing.

    Last thing I need is the HUD, I'm thinking of mixing the CTF and a CP HUD together. Since the CTF HUD shows clearly how many points each team has and can also display the score limit. CP HUD well because of the control points. I know it can be done but I just have no idea on how to even begin making this.
     
    Last edited: Feb 15, 2015
  9. Poisontrigger

    Poisontrigger L1: Registered

    Messages:
    17
    Positive Ratings:
    2
    I know it's been like a month but my question is related to the auxiliary/extra control points on a KOTH map, but instead of opening doors I was thing of unleashing an artillery/airstrike barrage on an area when a team caps that point. The barrage will only hurt the opposite team. How can I do that?

    I did some snooping around and found tf_projectile_rocket, it's not in the entity list and obsolete(that guy though) but it still appears in the compiled map as a stationary rocket that explodes on contact, does no damage and can be airblasted (switching teams after airblasting deletes the entity and everything parented to it).

    Still trying to get that Lockdown HUD too.
     
  10. Ynders

    aa Ynders absolutely gormful

    Messages:
    403
    Positive Ratings:
    513
    tf_point_weapon_mimic(or something along those lines) can shoot rockets, arrows, or grenades, with a lot of modifiable properties, which should help with what you're trying to achieve.
     
  11. Poisontrigger

    Poisontrigger L1: Registered

    Messages:
    17
    Positive Ratings:
    2
    Awesome it works!:thumbup:
    How can I make it so that when a team captures the point the rockets belong to that team. The wiki page for this entity it is unfortunately a stub.
     
  12. Ynders

    aa Ynders absolutely gormful

    Messages:
    403
    Positive Ratings:
    513
    The best way to solve that would be to have duplicates of them, one for each team, with different names. On the capture trigger, have outputs so that capping as Blu shoots the Blu team rockets, and capping as Red shoots the Red team rockets.
     
  13. Poisontrigger

    Poisontrigger L1: Registered

    Messages:
    17
    Positive Ratings:
    2
    I've done that but the rockets still kill the team who own the point. That's what I was trying to say sorry for not making that clear. Rockets fired from both entities are of Crit colour blue. I set the always crit option to yes.
     
  14. Ynders

    aa Ynders absolutely gormful

    Messages:
    403
    Positive Ratings:
    513
    You need to set the team as Red or Blu in the properties(red rockets kill blue, and vice versa), rockets with no team set glow blue and damage both teams. You might need to have a filter_tf_team(or whatever it's called) for each team for it to work properly.
     
  15. Poisontrigger

    Poisontrigger L1: Registered

    Messages:
    17
    Positive Ratings:
    2
    The tf_point_weapon_mimic entities don't have a "Team" property, so I'm a bit confused here.
     
  16. Coding Ethan

    Coding Ethan L2: Junior Member

    Messages:
    63
    Positive Ratings:
    44
    I don't know if you could give a setTeam output to them from the cp when capped, if not, you could give them a short Ubercharge.
     
  17. Poisontrigger

    Poisontrigger L1: Registered

    Messages:
    17
    Positive Ratings:
    2
    There just isn't a team property or input at all, damn. As for giving them ubercharge it sounds fine at first but after thinking about it it can have unintended results of a battle. For example lets say a skirmish is going on between a Red soldier and Blue heavy. Heavy is very low HP, soldier fires rocket, Blue barrage gets called in, Heavy get ubercharged the moment the rocket hits him and Heavy is alive and kills the soldier afterwards. It should be that both of them die. It may sound like a such tiny issue but it just bothers me.

    I also thought of making the rockets do no damage and instead have a trigger_hurt activate when the rockets hit but that would mean the rockets would only hit in one place, people will eventually learn those spots and completely avoid them. I could tie the tirgger_hurts on a func_movelinear or something but instead of a spot to avoid it would be an area. Pros being it is team controlled, cons it's predictable, also pyros(from both teams) can airblast the rockets making the trigger_hurt seem out of place and invoke a "WTF?" moment.

    So in the end, I think I'll to go with the rockets killing everything, the battlefield would be more dynamic(There will be hiding houses to hide in!) and team communication is more important which in turn would make it less spamable. Downsides being, getting team killed.

    Also another question what happens if I put a func_upgradestation in a non-MVM map? I'm quite curious about it's effects outside of MVM, will it be like that uber upgrade server plugin?

    EDIT: Tried it out, the UI pops up for you to buy things but none of the things you try to buy actually apply to your character, it basically doesn't do anything. Do I need something else to make it work like in MVM?
     
    Last edited: Mar 9, 2015