Custom Map Entities

# World Settings

Make sure game rules, teams, minimap, and tickets are hooked up properly.

1. Set Team Info Class
	1. Set the two teams
2. Set Team Tickets
	1. Set how many default tickets
3. Setup Minimap (SQMarkers)
	1. Hook up the 2 SQ Markers to define the boundary of the level (if no SQ Markers are present you can really use any entities to define the boundaries of the map, including a note)
	2. Generate 1 texture tile at desired resolution, set FOV (higher FOV will give fish eye distortion) ??? Some maps use multiple texture tiles??
	3. Set minimap texture as the texture generated.
4. Game Mode Override
	1. Set default game mode

# Flags

*Example Name: 1\_Ruins*

*Parent Entity Name: SQCapture Zone*

***Game Mode Note: Flags are not used in Insurgency, but bases are.***

Capture points in the level. Changes per team. Flags are in a folder once pasted into the level, but both teams also have flags for their 'Main' and 'Temp Main' bases. Flags are hooked up in the Lattice entity. Flag zones have a volume inside of them. Edit the size to control the area of the flag. You can add additional volumes to flag zones to cover complex shaped buildings or multiple buildings.

1. Set flag name
	1. Name of the flag (uses localization?)
2. Set initial team
	1. If there is a team that has the location under control at the start of the round
3. Time to capture
	1. How long does a capture take
4. Uncappable
	1. If the base cannot be captured, such as a main base.
5. Minimum enemies present required to start capture
	1. How many enemies are needed to start the capture process

# Lattice Entity

*Example Name: SQAASLattice1*

*Parent Entity Name: SQAASLattice*

****Game Mode Note: Only used in game modes that require flags to be captured in a sequence.****

The lattice entity links flag points together for game modes that require a specific capture order (bases connected). Flag capturing does not have to be linear and can fork/change directions multiple times. There are a lot of fields here with Lattice and a great more in depth explanation can be found here: http://forums.joinsquad.com/topic/3330-capture-zones-and-aas/

1. Ticket Penalty (??? - not sure why this is 0 most of the time)
2. Lattice
	1. For every flags/bases that connects to 2 flags/bases, you should create an array element. Node A is a base, B is the connecting base - these should also read in reverse for opposing team.

# Team Setup

*Example Name: INS Spawns*

Team setup (folder) in world outline have entities in them. They are also broken up into other groups. Pay attention to the names. Check the entity types to make sure you know what you are editing.

## Temp Bases

*Example Name: Gameplay\_TeamPrepUSTemp*

*Parent Entity Name: SQCapture Zone*

There can be a temp base outside of the main base. You will generally see the word Temp in the name of the entity. This is a smaller "main base". This is like a flag base, just cannot be captured and it will expire after a period of time.
 **Entities with the name Temp in them are associated with these.**

## Protection Zone

*Example Name: INS Protection Zone*

*Parent Entity Name: Gameplay Team Prep*

Kills enemies that come into the spawn area of main bases to prevent spawn camping as well as other things that prevent enemy teams from getting too close to another enemy base (such as placing deployable items). This has a sub object that is a volume, resize it to control the area of the protection zone.

1. Set team id
	1. What team the protection zone belongs to
2. How long to kill hostile
	1. How many seconds until hostile is killed
3. It destroys any projectile immediately if it enters or is fired inside protection zone.

## Gameplay Area

*Example Name: Gameplay\_TeamPrepUS*

*Parent Entity Name: Gameplay Team Zone*

Creates 6 boxes of invisible collision, creating a safe space around bases that keeps players inside until the match starts.In the sub object mode you have volumes you can move around and resize to set the shape of the space.

1. Set staging time
	1. Controls time until invisible collision walls disappear

## Ammo Crate

*Example Name:*

*BP\_Ammocrate*

*Parent Entity Name: BP Ammocrate (Various for Factions)*

Ammo Crates in bases. Located primarily in Main bases and Temp bases. Make sure you set the direction they face when spawning by rotating the actor.

1. Set initial team
	1. Set what team the ammo crate belongs to at the start of the round
2. Initial life span
	1. Set the life span of the actor before it disables/despawns

## Vehicle Repair

*Example Name:*

*BP\_vehicle\_repair*

*Parent Entity Name: BP Vehicle Repair (Various for Factions)*

Generally located in Main Base, a place to repair vehicles. Make sure you set the direction they face when spawning by rotating the actor.

1. Set initial team
	1. Who owns it initially
2. Set actor life spawn
	1. Set the life span of the actor before it disables/despawns

## Vehicle Spawns

*Example Name:*

*Spawner M939 Logi*

*Parent Entity Name: BP Vehicle Spawner (Various for Factions)*

Place this to spawn a vehicle. Make sure you set the direction they face when spawning by rotating the actor.

1. Set vehicle class
	1. Which vehicle to use
2. Respawn timer
	1. How long until it respawns
3. Team number
	1. Which team does the vehicle belong to
4. Spawn delay
	1. How long after the match until the first spawn
5. Initial life span
	1. How long until spawner disables

## Player Spawns

*Example Name: US Spawn*

*Parent Entity Name: SQTeam Spawn Point*

Player spawns signify where players will spawn. They are associated with a spawn group so you can cluster them. Make sure you set the direction they face when spawning by rotating the actor.

1. Set what group the spawn point belongs to
	1. Set the Spawn Group (place the SQTeam Spawn Group, the name of that entity is what you use here)
2. Respawn Delay
	1. How long until a respawn can happen from this point
3. Spawn protection time
	1. How long a player is invulnerable after spawning from this point
4. Max interval between spawning
	1. ???

## Spawn Groups

*Example Name:*

*US Spawn Primary Attack*

*Parent Entity Name: SQTeam Spawn Group*

Entities that define a spawn group. **The name of the entity is the spawn group**. This is one of the entities that shows up on a map for a spawn location (depending on game mode). Has the same settings as player spawns. Not an actual spawn point. They can be placed floating above spawn points or on the ground, whatever is easier to manage for you.

## Caches

*Example Name: BP\_DestroyableObjective*

*Parent Entity Name: BP\_DestroyableObjective*

****Game Mode Note: Only used in Insurgency game mode.****

********Game Mode Note: The INS\_Team can use these enteties for spawn.********

Place this to spawn the weapon caches that BLUFOR team should destroy to win. Usually there are much more then 5 entities per level. It is necessary for randomization.