Modules

The spawns module is required in a complete map XML because it specifies where players and observers can spawn. Default and observer spawns are defined with the <default> element and all other spawns in <spawn> elements. Only one default spawn element may be defined per map.

Multiple spawns from the same team can be grouped inside of a single <regions> element inside <spawns team="team-id">. Spawn positions are picked randomly inside of the defined regions. Since the plugin will not validate the spawn position by default, regions should be checked to make sure that they don’t intersect with solid objects or are midair. Spawns can also be defined with the safe="true" attribute, PGM will then check that the player spawns on a solid object and not midair.

The regions element accepts more than one region or region area. If they are not inside a <union> element one region will be picked at random for each spawn event.

Respawn behavior such as delays, etc. can be customized with the respawn module.

Element Description
<spawns> </spawns> A node containing the spawns for this map.
Sub-elements Value/Children
<spawn> An individual spawn where a team will spawn <regions>
<default> Unique The spawn for observers and teams without a spawn.
Only one default spawn element is allowed per map.
<regions>
Spawn & Default Element Attributes
Attribute Description Value Default
team The team this spawn applies to. Team ID
safe Validate that the player spawns in a safe location. true/false false
sequential Spawns players at the next region in a list if the one prior to it isn't safe.
Requires the safe attribute set to true.
true/false false
spread Spawn players as far away as possible from enemy players. true/false false
exclusive Spawn regions are assigned exclusively to one player or team and only they will spawn there. true/false false
persistent Once a player has been assigned a spawn they will spawn there even if they leave and rejoin the game. true/false false
kit Property The kit to apply to players when they are spawned in this spawn. Kit ID
filter Property Filter when this spawn is used. Filter
Spawn & Default Element Sub-elements
Element Description Value/Children
<regions> The region or regions where players will spawn. Regions
Regions Element Attributes
Attribute Description Value Default
angle The exact block coordinates that the player looks at when spawned.
This attribute will negate any angles set by the yaw and pitch attributes.
X,Y,Z
yaw The horizontal angle the player looks to when spawned.
South 0, East -90, North 180 and West 90.
-180 to 180 0
pitch The vertical angle the player looks to when spawned.
-90 is straight up 90 is straight down.
-90 to 90 0

TIP: Copy the yaw and pitch from the F3 screen in minecraft (the Facing: Direction (Axis) (Yaw/Pitch) line).

Example

<spawns>
    <spawn team="red" kit="red">
        <regions yaw="90">
            <cuboid min="-2,13,71" max="-9,13,78"/>
        </regions>
    </spawn>
    <spawn team="blue" kit="blue">
        <regions yaw="-90">
            <cuboid min="2,13,-71" max="9,13,-78"/>
        </regions>
    </spawn>
    <default>
        <regions yaw="0">
            <cuboid min="-1,16,-1" max="2,20,2"/>
        </regions>
    </default>
</spawns>

<!-- Example spawns from Assualt -->
<spawns>
    <spawn team="blue" kit="blue">
        <regions yaw="-90">
            <region id="blue-spawn"/>
        </regions>
    </spawn>
    <spawn team="red" region="red-spawn" kit="red">
        <regions yaw="90">
            <region id="red-spawn"/>
        </regions>
    </spawn>
    <default kit="obs">
        <regions yaw="-135">
            <region id="obs-spawn"/>
        </regions>
    </default>
</spawns>
  
<spawns safe="true" sequential="true">
    <spawn team="blue" kit="blue" yaw="180">
        <regions>
            <cuboid min="-10,71,5" max="12,126,27"/> <!-- Players will spawn here first -->
            <cuboid min="-10,6,5" max="12,6,27"/> <!-- Secondary spawn if the first isn't available -->
            <point>1,8,0</point> <!-- Tertiary spawn if all other team spawns aren't safe -->
        </regions>
    </spawn>
    <spawn team="red" kit="red" yaw="0">
        <regions>
            <cuboid min="-10,71,-27" max="12,126,-5"/>
            <cuboid min="-10,6,-27" max="12,6,-5"/>
            <point>1,8,0</point>
        </regions>
    </spawn>
</spawns>


Respawn Module

The respawn module allows the map creator to adjust the respawn time and if players are automatically respawned. The respawn time must be greater than 1 second (20 ticks), if the respawn time is less it will automatically default to one second, allowing the death to fully complete and the player to be reset properly.

To allow players to spawn at a bed set the bed attribute to true. Players spawning at beds will not spawn with a kit even if there is one specified. If a player has a bed spawn location set it overrides all other spawn regions for that player.

Element Description
<respawn/> Node specifying the respawn settings for this map.
Respawn Attributes
Attribute Description Value Default
delay Delay a players respawn for this duration. Time Period 2s
freeze Freeze the player during the end of the spawn countdown for this duration. Time Period 3s
auto Auto respawn the player after the delay time has elapsed. true/false false
blackout Dead players get a blindness effect applied. true/false false
spectate Allow dead players to fly around. true/false false
bed N/A Allow players to respawn from beds. true/false false
message Property Message to display on the respawn screen to respawning players. Formatted Text
Respawn Sub-elements
Element Description Value/Children
<message> Property Message to display on the respawn screen to respawning players. Formatted Text
<!-- Default auto respawn of 2 seconds -->
<respawn auto="true"/>

<!-- Allow players to respawn after 3 seconds, blackout the player when they die -->
<respawn delay="3s" blackout="true"/>

<!-- Allow respawning after 5s, display translatable waiting on flag drop respawn message -->
<respawn delay="5s" spectate="true">
    <message>{translate: "death.respawn.confirmed.waiting.flagDropped"}</message>
</respawn>