Hey all! Here are some guidelines and requirements for making sure Forge maps are great experiences for all players. For now this list is focused on Arena and BTB experiences, but most of this can help to elevate any Forge created experience. We expect this to be a living document and will update as we go.
Forge Map Design
Scale & Metrics
- 1:1 scale remakes from previous Halo titles likely need adjustments to work well with the Halo Infinite sandbox.
- Look to our official maps for scale and sizing best practices.
Sandbox Values
- Jump height without using clamber is 8 units
- Comfortable clamber height is 12 units
- Grapple range is 80 units
- Consider using the Halo Design set objects for blockouts because they are scaled appropriately for Halo Infinite already.
Layout
- More casual layouts might be non-starters from a gameplay perspective for core mode playlists.
- If players can fall to their death, build the map high enough so players feel like they’ll die. This also allows for grappleshot saving.
Visuals
- Make sure the difference between windows and doors is clear to players. This helps players intuitively navigate the level, understand sightlnes (where can I get shot from?), and know where their grenades will bounce.
Forge Map Metadata
Map Name
- Does the map have a name?
- Is the spelling and grammar in the name correct?
Map Description
- Does the map have a description?
- Is the spelling and grammar in the description correct?
Screenshots
- Does the map have screenshots uploaded?
Forge Match Flow
Map Intro Camera
It’s a good idea to have multiple Map Intro Cameras set up so when players are loading into the map they get a good overview of the playspace. It’s recommended to have at least 3 pairs of Map Intro Cameras set up.
Map Intro Camera Pair 1
Map Intro Camera 1
- Sequence Order = 1
- Camera Blend = Start
Map Intro Camera 2
- Sequence Order = 2
- Camera Blend = End
Map Intro Camera Pair 2
Map Intro Camera 3
- Sequence Order = 3
- Camera Blend = Start
Map Intro Camera 4
- Sequence Order = 4
- Camera Blend = End
Map Intro Camera Pair 3
Map Intro Camera 5
- Sequence Order = 5
- Camera Blend = Start
Map Intro Camera 6
- Sequence Order = 6
- Camera Blend = End
Team Intro Object
Experiences that have 4 players or less per team don’t need to use different squad settings. If you have more than 4 players per team the game will look for Bravo and Charlie squad labels on Team Intro objects. If those objects are not in your level and there are more than 4 players per team, the game will fall back to using random respawn points. It’s strongly recommended to use Team Intro objects in place of Spawn Point (Initial) objects when you can.
For each team choose one item from the list below to place in your map; setup info for each type of map intro object follows below.
- Team Intro Arrow Front
- Team Intro Line Left
- Team Intro Line Right
Team Intro Arrow Front
- Team Designator = Team 1 (Eagle) OR Team 2 (Cobra)
- Squad = Alpha
Team Intro Line Left
- Team Designator = Team 1 (Eagle) OR Team 2 (Cobra)
- Squad = Alpha
Team Intro Line Right
- Team Designator = Team 1 (Eagle) OR Team 2 (Cobra)
- Squad = Alpha
Winning Team Outro Object
Place one of these objects in the map.
Forge Spawn Point and Spawn Volume Setup
Spawn Volume
Not all modes use these; they’re generally only useful for CTF and Total Control
Team is set to either Eagle or Cobra
The spawn volume should encompass the entire team side of the map
- Weight = 0
- Disable Spawn Points = On
- Affects Opposing Team = On
The label of the spawn volume should match the mode it’s intended for.
- Label = CTF Include and/or Total Control Include
Weighted Spawn Volume
Not all modes use these; they’re generally only useful for CTF and Total Control
- Team = Neutral
- Weight = -4, -8, -12 (negative increments of 4)
- Disable Spawn Points = Off
- Affects Opposing Team = Off
The label of the spawn volume should match the mode it’s intended for.
- Label = CTF Include and/or Total Control Include
Initial Spawn Points For FFA
Team intro objects, if desired, should be used as initial spawn points.
- Place 8 in the map for all Arena FFA modes except Last Spartan Standing
- Place 12 in the map for Last Spartan Standing
- Team = Neutral
- Spawn order = 2
Spawn Point (Respawn)
Put in as many respawn points as appropriate for your experience. If you have designed an experience for 8 players, you should have at least 8 respawn points but it doesn’t hurt to have more than that. The main goal is to make sure players can spawn in a safe area that also directs them towards the action!
- Team = Neutral
Forge Nav Mesh and Bot Object Setup
Nav Seed Point
Nav seed points are only needed when nav mesh isn’t building in a specific area
Nav Mesh
Visualize nav mesh data by toggling Nav Mesh Visualization to ON in the Tool Settings menu. Nav mesh data MUST be built in order for Spartan bots to function correctly. You can build nav mesh data in the Build menu via the Tools radial menu. Here are some points to consider when evaluating nav mesh data:
- Is the nav mesh build?
- Does the nav mesh cover the playable area
- Does the nav mesh extend past the playable area?
- Do bots go where you want them?
Bot Jump Hints
Jump hints are used to help bots navigate between elevated surfaces
- One way jump hints help bots jump down from evelated surfaces
- Two way jump hints help bots jump up to and down from elevated surfaces
Building the nav mesh will auto-generate jump hints. If you want jump hints in places where they are not being auto-generated, manually place a jump hint where you need it. Here are some points to consider when evaluating jump hints:
- Are jump hints placed properly?
- Is the jump hint beyond the capability of a bot?
Bot Nav Markers
Bot Nav Markers are used to influence bot pathfinding.
- If Behavior = Explore, bots will prioritize the path defined by the object and its Neighbors.
- If Behavior = Hide, bots will consider the nav marker location as a hiding place and Neighbor(s) are not used.
It’s recommended to uniquely name Bot Nav Markers so they can be easily referenced as a Neighbor.
Nav Cutters
Nav Cutter objects prevent nav mesh data from being generated within their boundary.
- Large nav mesh data can fail a nav mesh build. Use nav cutters to limit the extent of the nav mesh.
- Set Nav Cutter Type = Jump Hint to prevent jump hints from auto-generating over the nav cutter area.
Gameplay Objects
Weapon Rack
- Static Weapon = Player choice
- Static Selection = Disabled
- Random Item Selection Class should match the class of the selected Static Weapon
- Spawn Properties = 343 Default
Weapon Pad (Power Weapon Spawn)
- Static Weapon = Player choice from the list
- Static Selection = Player choice
- Static Weapon = Player choice
- Random Item Selection Class should match the class of the selected Static Weapon
- Spawn Properties = 343 Default
- Navpoint = On for Arena, Off for BTB
Grenade Dispenser
- Grenade Quantity = 2
- Grenade Type = Player choice
- Static Selection = Enabled
- Respawn Time = 30.00
Equipment Dispenser
- Static Selection = Enabled
- Spawn Properties = 343 Default
Power Equipment Pad
- Static Equipment selected OR Random Equipment selected per match
- Spawn Properties = 343 Default
- Navpoint = On for Arena, Off for BTB
Game Mode Objects
CTF
Team Respawn Zones are helpful for CTF see the Respawn section for info. Team based Bot Nav Markers help to tell bots where to hide when carrying the flag. See the Forge Nav Mesh and Bot Object Setup section for more info.
Flag Stand 1 for Team 1 (Eagle)
- Label = CTF Include
- Label = Flag Delivery Plate
- Team = Team 1 (Eagle)
- Delivery Index = 1
Capture Plate 1 for Team 1 (Eagle)
- Label = CTF Include
- Label = Flag Delivery Plate
- Team = Team 1 (Eagle)
- Delivery Index = 1
Flag Stand 2 for Team 2 (Cobra)
- Label = CTF Include
- Label = Flag Delivery Plate
- Team = Team 2 (Cobra)
- Delivery Index = 1
Capture Plate 2 for Team 2 (Cobra)
- Label = CTF Include
- Label = Flag Delivery Plate
- Team = Team 2 (Cobra)
- Delivery Index = 1
Delivery Index values beyond 1 are only used in BTB CTF.
Place team based Bot Nav Markers as needed to tell bots where to hide when carrying the enemy flag.
- Label = CTF Include
Team = *Team 1 (Eagle) or Team 2 (Cobra); whichever team is appropriate for the hiding space - Behavior = Hide
King of the Hill
It’s recommended to use 3 zone capture plates for KOTH. Place additional Zone Capture Plates as needed for your experience. Set Index = 1 on the Zone Capture Plate you want to always appear first; the rest will appear in a random order. Setting Index = 1 for all Zone Capture Plates will result in a random order – not desirable for core KOTH play. For ranked play, Index value on Zone Capture Plates determines order of appearance.
Zone Capture Plate 1
- The middle zone Capture Plate should be equidistant from both teams’ spawns
- Label = KOTH Include
- Label = King Of The Hill Plate
- Team = Neutral
- Index = 1
Zone Capture Plate 2
- Label = KOTH Include
- Label = King Of The Hill Plate
- Team = Neutral
- Index = 2
Zone Capture Plate 3
- Label = KOTH Include
- Label = King Of The Hill Plate
- Team = Neutral
- Index = 3
Strongholds
For each Zone Capture Plate, the Index value controls which nav marker will be displayed (A, B, C).
- Index 1 = A
- Index 2 = B
- Index 3 = C
It’s suggested that the neutral Zone Capture Plate (the one in the middle of the map) should have Index = 2 to avoid player confusion.
Zone Capture Plate 1 (Eagle)
- Label = Strongholds Include
- Label = Strongholds Plate
- Team = Team 1 (Eagle)
- Index = 1
Zone Capture Plate 2 (Neutral)
- The middle / neutral Zone Capture Plate should be equidistant from both teams’ spawns
- Label = Strongholds Include
- Label = Strongholds Plate
- Team = Neutral
- Index = 2
Zone Capture Plate 3 (Cobra)
- The middle Zone Capture Plate should be equidistant from both teams’ spawns
- Label = Strongholds Include
- Label = Strongholds Plate
- Team = Team 2 (Cobra)
- Index = 3
Oddball
Ball Stand
- Label = Oddball Include
- Label = Oddball Stand
- Team = Neutral
Place Bot Nav Markers as needed to tell bots where to hide when carrying the ball.
- Label = Oddball Include
- Team = Neutral
- Behavior = Hide
ELIMINATION
Place a single Shrinking Zone object in your map for use in Elimination.
- Label = Elimination Include
Miscellaneous
Blocker Object
- Player Blockers keep players from getting out of the intended play space and help smooth out the experience of navigating the map
- Projectile Blockers help weapons, grenades, and equipment to behave as expected when hitting complex geometry and also prevent mode objects (Oddball, Flag, etc) from getting stuck inside geo or out of reach from players
Kill Volume
Kill Volumes instantly kill players and game mode objects upon entry and help to prevent players and objects from getting stuck when leaving the gameplay area of a map. Use a Safe Volume to create a safe zone within a Kill Volume. A Kill Volume should cover all of the areas outside the play area.
Named Location Volume
A Named Location Volume defines a named location within a map. Upon entering a Named Location Volume, players will see the associated location name string displayed near the radar on the HUD. Guidelines for Named Location Volume usage:
- All Areas of the map should be named, including traversal paths
- There should never be a gap in named locations.
Map Performance
It’s important that maps perform well on every platform that players can play Halo Infinite on. While performance on Forge maps scales well automatically, it’s recommended to work with other players on different platforms to understand if your map might be experiencing framerate slowdowns.
- Steady performance on PC
- Steady performance on Xbox One family
- Steady performance on Xbox Series S/X