Combining CTF and CP

KaPPY

L1: Registered
Sep 9, 2022
5
0
Hello!

I want to make a template map from which I can pull elements to create an MvM-like game mode for multiplayer play using CTF and CP elements.
So far I made one flag for one team with special delivery preset using Boojum Snark Ultimate Mapping Resource pack.
So my question is, how would I go about adding control points that only the "bomb" carrier can capture and potentially make it scalable with multiple points?
 

Tiftid

the Embodiment of Scarlet Devil
aa
Sep 10, 2016
542
415
To make control points that are only captureable by the bomb carrier:
  1. Create a filter_activator_name, call it "filter_flag_carrier" and set it to filter for the name "flag_carrier"
  2. Go into the Outputs tab of your item_teamflag, and give it these outputs:
    1662740574219.png
  3. Go into your trigger_capture_area and set the Filter Name to "filter_flag_carrier".
If you want the flag carrier's teammates to be able to help them capture, it's best to use a different method:
  1. Name your trigger_capture_area something like "cp_a_capzone" and set its "Start Disabled?" keyvalue to Yes
  2. Create a func_flagdetectionzone with the exact same size as the trigger_capture_area
  3. Give this func_flagdetectionzone the following outputs:
    1662740758339.png
That way, the point will still not be able to be captured unless a flag carrier is on it, but the flag carrier's teammates now have a reason to go to the point since they can assist the capture progress.

To make the HUD look more like MVM, you can put an entity called tf_logic_hybrid_ctf_cp in your map - this will allow the game to display control point UI along with the flag icons.

You already have the right idea with the SD flags, since to my knowledge they don't cause the game to end after 3 captures. So, the system is already scalable with multiple control points - the control points can only be captured by flag carriers, and the game will declare a team the winner if they ever own all control points (unless you configure your team_control_point_master to disallow that).
 

KaPPY

L1: Registered
Sep 9, 2022
5
0

Hey Tiftid, thank you for replying to my question!

I was eager to try out your first method since I made method #2 since it was the easier one of the two. Unfortunately, I got stuck on the 3rd step:

Go into your trigger_capture_area and set the Filter Name to "filter_flag_carrier".

Seems like trigger_capture_area's don't come with the usual Filter Name field when I created and I validated that was the case on Valve Developer Community. I am not sure how to approach this problem exactly, but do you know any workaround for this limitation?

Edit 1: Image for reference
Izrezak.PNG


Edit 2: I found the solution, just needed to add the "filtername" using SmartEdit!
 
Last edited: