Moving Flags: Attack and Defend Breakout Tutorial

Discussion in 'Forge Discussion' started by Sn1p3r C, Sep 3, 2016.

By Sn1p3r C on Sep 3, 2016 at 4:06 PM
  1. Sn1p3r C

    Sn1p3r C Halo 3 Era
    Creative Force

    Messages:
    352
    Likes Received:
    488
    BetaBannerLogo.png

    Hey folks, Sn1p3r C from Creative Force here.

    Lately, we've been focusing our efforts on filling up the Breakout submission thread on Waypoint, which means we've been playing and Forging a lot of Breakout. Right after H5 launch, Forgehub did an excellent video tutorial on how to create a makeshift attack and defend Breakout scenario shortly after release. Due to the way capture plates respond to scripts, however, the method used was simply to cover up one team's capture location each round, which left UI artifacts on screen and wasn't compatible with asymmetric maps that wanted both teams to be able to score. After the Hammer Storm update, we've pieced together a few simple Forging tricks, that when combined, let Forgers script flag and scoring locations, which enable some cool things like:

    Swap sides every round for asymmetric Breakout maps that work with the official gametype.

    Create Attack & Defend symmetric/asymmetric Breakout maps that work with the official gametype.

    The only drawback lies in the Attack and Defend gametypes - the neutral flag can be picked up by the defending team (but not scored with). This drawback doesn't affect Breakout, but it is why we don't have an Arena 1F tutorial ready for you at this time - setting up 2 Flag spawns and respawns is a little more involved. Stay tuned on that front =)​
    TL;DR
    The rest of this post will be a tutorial on how to set up three different scenarios using these techniques. A video tutorial is in the works, and if you'd like to see it in action yourself, just download the demo maps included at the start of each section. All maps made this way will work with the official "Breakout" and "Arena Breakout" gametypes.
    The Basics
    Round Manager
    The Round Manager lets us easily script off the beginning of the rounds using messages, not power states. We'll set up the object so that the map is in either State A or State B.
    Round Manager Script 1
    Condition: On Match: Start
    Action: Message: Send (Alpha)
    Round Manager Script 2
    Condition: On Round: Start
    Action: Message: Send (Charlie)
    Round Manager Script 3
    Condition: On Message: Received (Alpha)
    Action: Power: Set (XRay ON)
    Round Manager Script 4
    Condition: On Message: Received (Bravo)
    Action: Power: Set (XRay OFF)
    Round Manager Script 5
    Condition: On Message/Power: Multi
    Minimum to Trigger: 2
    Condition 1: On Message (Charlie)
    Condition 2: On Power (XRay ON)
    Action: Message: Send (Bravo)
    Round Manager Script 6
    Condition: On Message/Power: Multi
    Minimum to Trigger: 2
    Condition 1: On Message (Charlie)
    Condition 2: On Power (XRay OFF)
    Action: Message: Send (Alpha)
    Yes, we will definitely have this as a prefab soon :)

    Basic Ball Spawn Object (As a Flag Capture Plate)
    Now that your round manager is set up, you'll want to configure your gametype objects. This configuration will depend on what kind of map you're trying to build. The key to all of this is making use of ball spawn plates as replacements for your flag capture plates.
    Team: [Set this to the team that will score with it, or leave neutral for the neutral flag position]
    Game Mode Label 1: Breakout: Include
    Game Mode Label 2: CTF: Flag Spawn & Return
    //These make the Ball Spawn behave just like a flag capture plate, but it will respond to scripts

    Placing the Ball Spawn Object inside a flag stand
    Ball spawn objects don't look like flag stands, which might be jarring for your players. However, if you remove the labels on a flag stand object, and phase in the Ball Spawn object as above... we can get something that looks much closer to the flag stand objects players are used to, but it'll respond to scripts.
    The flag stand, with the CTF labels removed...
    Breakout Flag Stand Blue Screenshot 2016-09-05 10-43-24.png

    The ball spawn object phased into place, with the game mode labels applied.
    Breakout Ball Stand Red Screenshot 2016-09-05 10-44-25.png

    Blocking Spawns to enable side switching:
    When you want teams to switch sides, you need to have have starting spawns in two different areas. The problem is - starting spawns don't respond to scripts. To fix that, we need two sets of starting spawns in each spawn location, and we'll block them with invisible blockers when we don't want the teams to use them. The "Swapping Sides" section will cover the scripts needed to alternate them, but here's how the physical setup should look.
    An example "Attacker" spawn, with red spawns blocked...
    Breakout Spawn blockers Screenshot 2016-09-05 10-52-16.png

    And an example "Defender" spawn with the blue spawns blocked.
    Spawn Blocking Screenshot 2016-09-05 10-35-28.png
    When it's time to swap rounds, we simply use our round manager to uncover one spawn, and cover another. I prefer to spawn/despawn, but as long as you get collision on top of a spawn point, it will "turn off" and be unusable by that team.
    Applying the Basics

    #1 - Swap sides on an asymmetric Breakout map
    (Demo map: Junglerock 5th Playtest)

    Neutral flag spawns, teams "push" to attack, and red and blue spawn alternate spawn and scoring locations each round.
    This is the most straightforward setup to make. It lets us Forgers create Asymmetric maps that are balanced for a round-based gametype like Breakout, since teams will alternate sides each round.

    Here are the things we need to accomplish for side swapping on an asymmetric Breakout map:
    1. Round manager to let us script on round changes
    2. Neutral Flag is static, spawning in the center
    3. Teams spawns swap sides every round
    4. Capture plates swap sides every round


    For #1, take a look up at "The Basics" section above and set up your Round Manager. Hide it somewhere out of sight of your playspace, or use a script brain so it is invisible by default.

    Accomplishing #2 is easy - we simply place a neutral flag just like vanilla Breakout and ensure the game mode labels are set correctly.

    #3 and #4 are the trickier parts. However, since the Round Manager is in place, it's just a matter of blocking the spawns on alternating rounds and spawning/despawning the ball-spawn capture plates to make the teams swap sides. Spawn in the following objects, and set them up accordingly as below:

    Red Plate 1, Blue Plate 1, Invis Blockers 1 and 2
    Script 1
    Condition: Message: Received (Alpha)
    Action: Spawn
    Script 2
    Condition: Message: Received (Bravo)
    Action: Despawn
    Red Plate 2, Blue Plate 2, Invis Blockers 3 and 4
    Script 1
    Condition: Message: Received (Alpha)
    Action: Despawn
    Script 2
    Condition: Message: Received (Bravo)
    Action: Spawn
    The neutral capture plate needs no scripts, only game mode labels.

    Setup
    Place Red Plate 1 and Blue Plate 2 on one team's capture position. (Phased physics suggested)

    Then, place Red Plate 2 and Blue Plate 1 on the other team's capture position. (Spawning and Despawning capture plates are what we couldn't do until the Hammer Storm update brought Ball Spawns, which is why flipping sides on Asymmetric Breakout wasn't previously possible, nor was true Attack & Defend Breakout - we used to just cover them up with objects.)

    You can group these objects, but be careful not to edit scripts while grouped. It will unify the scripts and might break your setup.

    Next, ensure that each side has two launch platforms, one with blue team and one with red team. (Four total, 2 red, 2 blue).

    Use Invisible Blockers 1 and 2 to block Red Team on Side 1, and Blue Team on Side 2.
    Use Invisible Blockers 3 and 4 to block Red Team on Side 2, and Blue Team on Side 1.

    Now, when the Round starts, one set of invisible blockers will disappear, and the other appear, causing both teams to switch sides. If you set it up correctly, the capture plates will also be swapping sides, ensuring each team can "push to capture" even after they've switched sides.)

    Finally, you can also make your map respond to changes in the rounds by having scripts respond to messages on (Alpha) or (Bravo), and the Power: State of (XRay). Lights, object colors, moving geometry... There's a ton of possibilities to explore.

    That's it, you did it!
    #2 - Create Attack/Defend asymmetric Breakout maps that work with the 343 gametype
    (Demo map: Playground 1F 0.2.1)

    Flag spawns on the "attacker" side of the map, only attackers can capture, there is one capture location, sides switch every round.
    Asymmetric attack and defend maps will play like One Bomb on the H3 map, High Ground. One team will spawn on the "attacker" side of the map (the beach), and the other will spawn on the "defender" side of the map (the base). Every round, red and blue team will swap who is attacking and defending. Because it's Breakout, both teams can win through killing all 4 members of the enemy team. However, the attackers can also win by planting the flag.

    Here are the things we need to accomplish for asymm Attack & Defend:
    1. A round manager to let us script on round changes.
    2. Teams switch spawns every round
    3. Neutral Flag is static, spawning at "the beach"
    4. One capture plate at a time, spawning at "the base"


    For #1, take a look up at "The Basics" section above and set up your Round Manager.

    For #2, we're going to use the same setup as the invisible blockers as in the "Side Swapping" section. Spawn those in and set up you spawning platforms as needed.

    For #3, we have it easy - place your neutral flag just like vanilla Breakout, set the game mode labels, and you're golden.

    Step #4 is the only major change from above because we want only the attackers to be able to score during a round. Fortunately, this process is easier than before - all we're doing is ensuring that the Red Plate is despawned when Blue is attacking and that the Blue Plate is despawned when Red is attacking.

    Start off by spawning in a Red and Blue capture plate from "The Basics" section. Configure them with the following scripts spawning and despawning scripts.
    Note: make sure that your invisible blockers sync up with these channels - Red should be at attacking when the Red Plate exists (Alpha) and Blue should be attacking when the Blue Plate exists (Bravo).

    Red Plate
    Script 1
    Condition: Message: Received (Alpha)
    Action: Spawn
    Script 2
    Condition: Message: Received (Bravo)
    Action: Despawn
    //This makes the objects appear during State A and disappear during State B.
    Blue Plate
    Script 1
    Condition: Message: Received (Alpha)
    Action: Despawn
    Script 2
    Condition: Message: Received (Bravo)
    Action: Spawn
    //This makes the objects appear during State B and disappear during State A.

    Setup
    Now, place the two capture points where you want the capture location to be. I would suggest phasing them over each other to ensure both teams have identical capture paths, but there's nothing stopping you from having Red and Blue need to move to different locations. You may also wish to phase a Flag Stand object (with no game mode labels) over the plates for aesthetics.

    I would recommend that you do not put these at the back of the defender's base - although this might be great for an Assault-style gametype, you'll end up with a map that never has flag captures because the teams will eliminate each other before the cap has a chance to happen. This is map design, so of course there can be exceptions, but I would suggest placing the capture location somewhere between the 50% and 75% of the ground the attackers have to cover. This will pull the defenders out and create more dynamic gameplay, as you make the flag a viable option for the attackers. Just my two cents ^_^

    That's it, you did it!
    #3 - Create Attack/Defend symmetric Breakout maps that work with the 343 gametype
    (Demo Map: Misfire 1F)

    Flag switches sides in front of attackers, only attackers can capture, there are two capture locations (only one at a time), sides stay static every round.​
    Symmetric attack and defend maps will play like One Bomb on the H3 map, The Pit. Teams spawn on their respective sides, but each round, the role of Attackers and Defenders switch. And, of course, both teams can win through killing all 4 members of the enemy team. However, the attackers can also win by planting the flag. When designing these maps, it's a good idea to put your capture locations in a fairly neutral, but exposed position. Having the flag should feel like an advantage, or teams won't make use of it.

    Here are the things we need to accomplish for symmetrical Attack & Defend:
    1. A round manager to let us script on round changes.
    2. One capture plate at a time, alternating sides each round.
    3. Neutral Flag alternates sides each round.


    For #1, take a look up at "The Basics" section above and set up your Round Manager.

    For #2, we're going to set up the Red Plate and Blue Plate like we did for the asymm - script configuration for the Red Plate and Blue Plate is in previous section of the guide.

    For #3, we're going to need to move the neutral flag ball spawn with scripts instead of despawning it. In addition, we need to "clear" the flag during the rounds that the plate moves, because the flag itself won't move in response to the script. The "setup" section has a visual of how this is going to work. You'll need the following objects:

    Kill Volume [Instant]

    No special properties needed, just place it directly above your flag where players won't hit it.

    Neutral Plate
    Script 1
    Condition: Message: Received (Alpha)
    Action: Position/Rotation Reset
    Velocity Reset: On/Off
    Time: 0.00
    Script 2
    Condition: Message: Received (Bravo)
    Action: Move Offset
    X/Y/Z Movement: (Depends on your map)
    Time: 0.50
    Local Movement: On/Off

    Invisible Blocker [8x8 or larger]
    Script 1
    Condition: Message: Received (Alpha)
    Action: Position/Rotation Reset
    Velocity Reset: On/Off
    Time: 0.00
    Script 2
    Condition: Message: Received (Bravo)
    Action: Move Offset
    Z Movement: 100.00 (or whatever works for your map)
    Time: 0.50
    Local Movement: On

    Setup

    Place the neutral flag on the side opposite the first capture plate to spawn. So if you're following the scripting above, you'll have the Red Plate on the blue side (the capture point), the Neutral Plate on the red side (to pick up the flag), and the Blue Plate will be despawned. There are no spawns to sync up.

    Next, adjust the movement script on the Neutral Plate so that you can ensure it moves correctly to the location you want it in for the even-numbered rounds. I recommend spawning a switch that sends a message on Charlie for testing. (Remember, the Charlie message is sent every time a round starts, so you just simulating a round swap when you push this button). Also this step is a good chance to ensure your neutral plate is on phased physics.

    Finally, place your kill volume and invisible blocker around the first Neutral Plate location so that the flag is "cleared" during even numbered rounds. Adjust the blocker's vertical movement as necessary so that the final setup looks like this:

    Breakout - Whole Setup with labels.png

    That's it, you did it!​

    Thanks for reading, and please comment with questions or improvements we can make to the tutorial!

    Love,

    Creative Force
    :)
     
    #1 Sn1p3r C, Sep 3, 2016
    Last edited: Sep 5, 2016
Tags: this article has not been tagged

Comments

Discussion in 'Forge Discussion' started by Sn1p3r C, Sep 3, 2016.

    1. Ray Benefield
      Ray Benefield
      Glad to finally see this get out there! I haven't had so much fun in a while. Attack and defend really changes the dynamic and I love it. Really forces defense to be on their feet. I wish we could do two capture plates to create S&D.
    2. RPAL
      RPAL
      I've actually spent the past couple of months doing something very similar with Neutral Flag for a certain minigame of mine. Glad to know I have a reference now if I ever need to redo the scripts on the entire map. Excellent work guys.
    3. Drizzy_Dan
      Drizzy_Dan
      Can't believe I'm just seeing this! I'm actually trying to work on a Breakout map right now but I super suck at Forging. This'll certainly be something I look to when I get better because the Attack and Defend variant is very appealing.
      Nitro, Randy 355 and Sn1p3r C like this.
    4. Soldat Du Christ
      Soldat Du Christ
      I realy like breakout as a gamemode, i'm glad creative force is putting so much effort into keeping this awesome game-mode alive, innovating even! Especialy you SniperC

      That being said, the breakout community release update (mostly CF line up) ruined the playlist for me. I think the origional line up was by far superior, crossfire being the pinnacle of the experience.
    5. Sn1p3r C
      Sn1p3r C
      Thanks for the feedback man - I'm sorry to hear you didn't like our original take. We're actually finishing up another initiative this sprint - mind if I tag you when it gets posted? I'd love to hear your thoughts on the new batch; I think we all learned a lot from the first go-around, and we've had additions to the team that have their own visions of Breakout.
      Last edited: Sep 11, 2016
      Randy 355 and Soldat Du Christ like this.
    6. Dorque_Fu
      Dorque_Fu
      Hoping this is the Minigame I love! Can't wait to play it again.
      RPAL likes this.

Share This Page