Minecraft updates (#29)

* Implement excluded locations

* Update Minecraft to use exclusion_rules for its exclusion pools

* Flag the enchanted books as advancement so they don't go on excluded locations (particularly the Infinity book)

* update playerSettings for exclusion

* new items: 32 Arrows, Saddle, structure compasses for overworld structures

* move structure linking to create_regions instead of generate_basic

* Update Minecraft to use LogicMixin

* add separate can_exclude property, so non-progression items can be marked non-excluded

* separate fill step for nonadvancement nonexcluded items

* made Saddle not a progression item, but also nonexcluded

* fix missing player arg

* remove higher xp amounts from pool, leaving only 50 XP

* fix new Minecraft item IDs

* added shulker box item for starting inventory

* increment client and data version

* change client_version to int instead of tuple

* make saddle a progression item

* added structure compass option and appropriate logic for all compasses

* Update playerSettings.yaml with MC options

* update minecraft tests

* update exclusion procedure for clarity
This commit is contained in:
espeon65536
2021-07-23 19:28:16 -04:00
committed by GitHub
parent 83dc92c6a5
commit e79a918c03
8 changed files with 219 additions and 171 deletions

View File

@@ -47,6 +47,14 @@ item_table = {
"8 Gold Ore": ItemData(45032, False),
"Rotten Flesh": ItemData(45033, False),
"Single Arrow": ItemData(45034, False),
"32 Arrows": ItemData(45035, False),
"Saddle": ItemData(45036, True),
"Structure Compass (Village)": ItemData(45037, True),
"Structure Compass (Pillager Outpost)": ItemData(45038, True),
"Structure Compass (Nether Fortress)": ItemData(45039, True),
"Structure Compass (Bastion Remnant)": ItemData(45040, True),
"Structure Compass (End City)": ItemData(45041, True),
"Shulker Box": ItemData(45042, False),
"Bee Trap (Minecraft)": ItemData(45100, False),
"Victory": ItemData(None, True)
@@ -62,16 +70,23 @@ item_frequencies = {
"4 Emeralds": 8,
"4 Diamond Ore": 4,
"16 Iron Ore": 4,
"500 XP": 4, # 2 after exclusions
"100 XP": 10, # 4 after exclusions
"50 XP": 12, # 4 after exclusions
"500 XP": 0,
"100 XP": 0,
"50 XP": 21,
"3 Ender Pearls": 4,
"4 Lapis Lazuli": 2,
"16 Porkchops": 8,
"8 Gold Ore": 4,
"Rotten Flesh": 4,
"Single Arrow": 0,
"Bee Trap (Minecraft)": 0
"32 Arrows": 4,
"Structure Compass (Village)": 0,
"Structure Compass (Pillager Outpost)": 0,
"Structure Compass (Nether Fortress)": 0,
"Structure Compass (Bastion Remnant)": 0,
"Structure Compass (End City)": 0,
"Shulker Box": 0,
"Bee Trap (Minecraft)": 0,
}
lookup_id_to_name: typing.Dict[int, str] = {data.code: item_name for item_name, data in item_table.items() if data.code}