pub struct DeploymentPattern {
pub description: Option<String>,
pub game_version: GameVersionRef,
pub id: EntityId,
pub name: DeploymentPatternName,
pub objectives: Vec<Vec2>,
pub recommended_terrain_layout_ids: Option<Vec<EntityId>>,
pub source: Option<DeploymentPatternSource>,
pub territories: Vec<DeploymentPatternTerritoriesItem>,
pub zones: Vec<DeploymentPatternZonesItem>,
}Expand description
A deployment map: per-side deployment zones, objective positions, and (11e) per-side territory polygons. Pattern geometry carries forward unchanged from 10th edition; downstream tooling (e.g. bevy-deploy-helper) consumes this as the canonical encoding.
JSON schema
{
"title": "Deployment Pattern",
"description": "A deployment map: per-side deployment zones, objective positions, and (11e) per-side territory polygons. Pattern geometry carries forward unchanged from 10th edition; downstream tooling (e.g. bevy-deploy-helper) consumes this as the canonical encoding.",
"type": "object",
"required": [
"game_version",
"id",
"name",
"zones"
],
"properties": {
"description": {
"type": "string"
},
"game_version": {
"$ref": "#/$defs/game-version-ref"
},
"id": {
"$ref": "#/$defs/entity-id"
},
"name": {
"type": "string",
"maxLength": 128,
"minLength": 1
},
"objectives": {
"description": "Objective-marker positions on the board.",
"type": "array",
"items": {
"$ref": "#/$defs/vec2"
}
},
"recommended_terrain_layout_ids": {
"description": "Ids of recommended terrain-layout entities (resolved once terrain-layout data is authored).",
"type": "array",
"items": {
"$ref": "#/$defs/entity-id"
},
"uniqueItems": true
},
"source": {
"description": "Mission pack or source the pattern originates from (e.g. 'leviathan').",
"type": "string",
"maxLength": 64,
"minLength": 1
},
"territories": {
"description": "11e per-side territory polygons, mirroring the deployment-zone shape (e.g. the band between a deployment zone and the midline). Empty until authored.",
"type": "array",
"items": {
"type": "object",
"required": [
"player",
"position",
"shape"
],
"properties": {
"player": {
"$ref": "#/$defs/side"
},
"position": {
"$ref": "#/$defs/vec2"
},
"shape": {
"$ref": "#/$defs/zone-shape"
}
},
"additionalProperties": false
}
},
"zones": {
"description": "Per-side deployment zones.",
"type": "array",
"items": {
"type": "object",
"required": [
"player",
"position",
"shape"
],
"properties": {
"color": {
"description": "Hex render color for the zone overlay.",
"type": "string",
"pattern": "^#[0-9a-fA-F]{6}$"
},
"name": {
"type": "string",
"maxLength": 128,
"minLength": 1
},
"player": {
"$ref": "#/$defs/side"
},
"position": {
"$ref": "#/$defs/vec2"
},
"shape": {
"$ref": "#/$defs/zone-shape"
}
},
"additionalProperties": false
},
"minItems": 1
}
},
"additionalProperties": false
}Fields§
§description: Option<String>§game_version: GameVersionRef§id: EntityId§name: DeploymentPatternName§objectives: Vec<Vec2>Objective-marker positions on the board.
recommended_terrain_layout_ids: Option<Vec<EntityId>>Ids of recommended terrain-layout entities (resolved once terrain-layout data is authored).
source: Option<DeploymentPatternSource>Mission pack or source the pattern originates from (e.g. ‘leviathan’).
territories: Vec<DeploymentPatternTerritoriesItem>11e per-side territory polygons, mirroring the deployment-zone shape (e.g. the band between a deployment zone and the midline). Empty until authored.
zones: Vec<DeploymentPatternZonesItem>Per-side deployment zones.
Trait Implementations§
Source§impl Clone for DeploymentPattern
impl Clone for DeploymentPattern
Source§fn clone(&self) -> DeploymentPattern
fn clone(&self) -> DeploymentPattern
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for DeploymentPattern
impl Debug for DeploymentPattern
Source§impl<'de> Deserialize<'de> for DeploymentPattern
impl<'de> Deserialize<'de> for DeploymentPattern
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for DeploymentPattern
impl PartialEq for DeploymentPattern
Source§fn eq(&self, other: &DeploymentPattern) -> bool
fn eq(&self, other: &DeploymentPattern) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl Serialize for DeploymentPattern
impl Serialize for DeploymentPattern
impl StructuralPartialEq for DeploymentPattern
Auto Trait Implementations§
impl Freeze for DeploymentPattern
impl RefUnwindSafe for DeploymentPattern
impl Send for DeploymentPattern
impl Sync for DeploymentPattern
impl Unpin for DeploymentPattern
impl UnsafeUnpin for DeploymentPattern
impl UnwindSafe for DeploymentPattern
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more