-
Notifications
You must be signed in to change notification settings - Fork 0
Map Configuration
I've made a Fabric mod to aid with setting up the map config file, since it can be tedious. You can find the download in Releases. It's for Fabric 1.17. /switchmaps <mapname>
is the first command, and then it'll kind of walk you through the rest. Shoot me a message if you have questions about using it.
Note: Coordinates can take float values and yaw/pitch!
world_name
: The name of the world to be used as the map. A world's name is the same as a world's directory name.
waiting_spawn
: The coordinates of the map's waiting area, in x y z yaw pitch
. This is where players will spawn when they are moved to the game world before the game's building phase starts.
delete_waiting_platform
: Whether or not the waiting area defined in waiting_platform_bounding_box
should be deleted when the game starts and players are moved out of it.
waiting_platform_bounding_box
: A list of two coordinates representing opposite corners of the waiting area. When delete_waiting_platform
is enabled, everything within these corners will be removed when the game starts.
void_enabled
: Whether or not players should be killed when they go below voidLevel
.
void_level
: The minimum y-value players can place blocks. When void_enabled
is true, players below this y-value will be killed.
building_time
: Number of seconds the building phase will take.
building_coins
: Number of coins players will have during the building phase.
flat_coins_on_kill
: Whether or not players are awarded a flat amount of coins when they kill a player.
coins_on_kill
: The number of coins players are awarded on a kill when flat_coins_on_kill
is enabled.
percent_coins_on_kill
: Whether or not players are awarded a percentage of their victim's coins when they kill a player.
rate_on_kill
: The fraction of their victim's coins players are awarded on a kill when percent_coins_on_kill
is enabled.
coin_cap
: The maximum amount of coins players can hold at one time. This only applies in the Attacking phase.
attack_time_limit
: The number of seconds each round of the attack phase will take.
first_to_five_stars_time_limit
: The number of seconds each round of the attack phase will take when the First to Five Stars game modifier is enabled.
border_x
: The center-line between the two map bases. Players will not be able to cross this line and go between the two sides of the map.
max_z
: The maximum z-value players can move and place blocks.
min_z
: The minimum z-value players can move and place blocks.
max_y
: The maximum y-value players can place blocks.
attacker_base_prot_max_z
: The maximum z-value the attacker's spawn protection will extend to. Defenders will not be able to move, attack, or place blocks into this area.
emerald_spawn_delay
: The number of seconds in-between each emerald spawn.
enable_placeable_blocks
: Whether or not the placeable_blocks
list is used. If disabled, any block can be placed.
enable_breakable_blocks
: Whether or not the breakable_blocks
list is used. If disabled, any block can be broken.
placeable_blocks
: A list of Material
s representing blocks players can place. See this list of Material
s.
breakable_blocks
: A list of Material
s representing blocks players can break. See this list of Material
s. You can put NONE
as the only item in the list to keep them from breaking everything.
Assault will also accept Material
s from older (pre-1.13) versions (found here). In modern versions, if you want to use a colored block (like WOOL
), it will have 16 different Material
types (WHITE_WOOL
, GREEN_WOOL
, etc.). Instead of putting all of those in the config file, just put WOOL
, and the plugin will interpret it to mean every color of wool.
This works for any of the following:
BANNER
BED
CARPET
CONCRETE
CONCRETE_POWDER
GLAZED_TERRACOTTA
-
STAINED_CLAY
/TERRACOTTA
STAINED_GLASS
-
THIN_GLASS
/STAINED_GLASS_PANE
WALL_BANNER
WOOL
Since different color teams have different color blocks, you cannot limit placeable/breakable blocks to certain colors.
The map bases takes the form of a list of maps of maps. It sounds complex but if you just copy the pre-made map configs you should be fine.
bases
: A list of team colors. Currently, you can only use RED
and BLUE
.
RED
/BLUE
: A map of maps. Holds all of the values for the RED
base. The RED
is the base that RED
is defending.
defender_spawns
: A list of coordinates representing the defending team's spawn-points. When someone spawns, the game will choose a random point from this list.
defender_bounding_boxes
: A list of lists representing the spawn protection bounding boxes for each defender spawn-point. Inside each main list item should be two inner list items, each representing opposite corners of the bounding box. Attackers will not be able to move, attack, or place blocks into this area.
objective
: The coordinates of the attacker's objective, the nether star. A nether star will be spawned in this location.
attacker_spawns
: A list of coordinates representing the attacking team's spawn-points. When someone spawns, the game will choose a random point from this list.
attacker_buff_shops
: A list of coordinates representing the locations of the attacking team's buff shop NPCs.
item_shops
: A list of coordinates representing the locations of the base's item shop NPCs. There is no difference between attacker and defender item shops.
emerald_spawns
: A list of coordinates representing the emerald spawn-points.
When orienting the map, the bases should be oriented like this:
-
Defenders: South end (+Z)
-
Attackers: North end (-Z)
border_x
should be a line running in-between the two bases.
Although the example uses RED
and BLUE
teams, you can use any of the 16 main Minecraft colors. You can find them on the wiki here. Here's a list:
BLACK
DARK_BLUE
DARK_GREEN
DARK_AQUA
DARK_RED
DARK_PURPLE
GOLD
GRAY
DARK_GRAY
BLUE
GREEN
AQUA
RED
LIGHT_PURPLE
YELLOW
WHITE
The plugin comes with the config for the map Saloon, which can be found at /plugins/Assault/maps/map_saloon.yml
. It can be viewed below.
world_name: saloon
waiting_spawn: 0.5 128. 45.5
delete_waiting_platform: true
waiting_platform_bounding_box:
- 3. 129. 42.
- -3. 126. 48.
void_enabled: true
void_level: 70.
building_time: 180
building_coins: 100
give_coin_delay: 5.0
give_coin_amount: 8
flat_coins_on_kill: false
coins_on_kill: 0
percent_coins_on_kill: true
rate_on_kill: 0.2
coin_cap: 0
attack_time_limit: 480
first_to_five_stars_time_limit: 480
border_x: 0
max_z: 86.
min_z: 2.
max_y: 122.
attacker_base_prot_max_z: 20.
emerald_spawn_delay: 20
enable_placeable_blocks: false
enable_breakable_blocks: true
# https://helpch.at/docs/1.8/index.html?org/bukkit/Material.html
placeable_blocks:
- WOOL
- STAINED_CLAY
- STAINED_GLASS
- WOOD
- COBBLESTONE
- WEB
- GRAVEL
- CACTUS
- TORCH
breakable_blocks:
- DEAD_BUSH
- CACTUS
- RED_ROSE
- WEB
- TORCH
# This refers to the base that each team is DEFENDING.
bases:
- RED:
defender_spawns:
- -27.5 111. 83.5 -180. 0.
# This is a list of lists. Each sub-list inside the main list is one bounding box, with two opposite corners.
defender_bounding_boxes:
- - -31. 0. 85.
- -26. 255. 81.
objectives:
- -21.5 111.5 74.5
attacker_spawns:
- -22.5 106. 11.5 0. 0.
attacker_buff_shops:
- -19.5 106. 14. 90. 0.
item_shops:
- -19.5 106. 12.5 90. 0.
- -29.5 111.06250 82.5 -65. 0.
emerald_spawns:
- -16.5 106.5 58.5
- BLUE:
defender_spawns:
- 29. 111. 83.5 -180. 0.
defender_bounding_boxes:
- - 26. 0. 85.
- 31. 255. 81.
objectives:
- 35.5 111.5 74.5
attacker_spawns:
- 34.5 106. 11.5 0. 0.
attacker_buff_shops:
- 37.5 106. 14. 90. 0.
item_shops:
- 37.5 106. 12.5 90. 0.
- 27.5 111.06250 82.5 -65. 0.
emerald_spawns:
- 40.5 106.5 58.5