Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update to 1.20.5 #993

Merged
merged 101 commits into from
May 28, 2024
Merged

Update to 1.20.5 #993

merged 101 commits into from
May 28, 2024

Conversation

misode
Copy link
Member

@misode misode commented Apr 12, 2024

Preview download for testing:
https://github.com/Gamemode4Dev/GM4_Datapacks/actions/runs/9099290404/artifacts/1505990608

Continued from #978

Steps taken

Initial steps:

  • Apply overlays with script
  • Update version numbers and pack formats
  • Update test functions (manually)
  • Disable player head logic in plugins

Fixing JSON resource load errors:

  • Turtle scute: Replace minecraft:scute -> minecraft:turtle_scute
  • Location predicates
    • Search for "biome" and "structure" -> "biomes" and "structures"
  • Nested loot tables
    • Replace ("type": ?"(?:minecraft:)?loot_table",\n\s+(?:"weight": \d+,\n\s+)?)"name" -> $1"value"
    • Fix gm4_end_fishing:gameplay/fish/scattered_treasure and gm4_end_fishing:gameplay/fish/valuables manually
  • Set lore function
    • Note down the 4 replace true cases in files lore.json, copy.json and update_sips.json
    • Replace ,\n\s+"replace": (false|true) -> (empty replacement)
    • Replace ("function": "(?:minecraft:)?set_lore",(\n\s+)) -> $1"mode": "append",$2
    • Switch in previous 4 cases append -> replace_all
  • Block and item predicates
    • Replace ("block": \{\n\s+)"tag": "([a-z]) -> $1"blocks": "#$2
    • Replace ("fluid": \{\n\s+)"tag": "([a-z]) -> $1"fluids": "#$2
    • Replace ("(?:mainhand|offhand|head|chest|legs|feet)": \{\n\s+)"tag": "([a-z]) -> $1"items": "#$2
    • Search for "tag": "[a-z] and manually fix the 3 item predicates in advancements + 1 in match tool predicate
    • Replace all "tag" -> "blocks" in has_beam.json
  • Attribute operations
    • Replace "addition" -> "add_value"
    • Replace "multiply_base" -> "add_multiplied_base"
    • Replace "multiply" -> "add_multiplied_total"` (doesn't appear in our repo)
  • Item sub predicates
    • Search "potion" and fix the 2 cases manually
    • Replace \n(\s+)"enchantments": \[\n(\s+)\{\n(\s+)"enchantment": "([a-z_:]+)"\n(\s+)\}\n(\s+)\] -> \n$1"predicates": {\n$2"minecraft:enchantments": [\n$2 {\n$3 "enchantment": "$4"\n$5 }\n$6 ]\n$1}
    • Replace \n(\s+)"enchantments": \[\n(\s+)\{\n(\s+)"enchantment": "([a-z_:]+)",\n(\s+)"levels": (\d+)\n(\s+)\}\n(\s+)\] -> \n$1"predicates": {\n$2"minecraft:enchantments": [\n$2 {\n$3 "enchantment": "$4",\n$5 "levels": $6\n$7 }\n$8 ]\n$1}
    • Search "enchantments": \[\n\s+\{ and fix the remaining 10 cases manually
    • Search "durability", we don't have any in our repo
  • Advancement icons
    • Replace "icon": \{\n(\s+)"item" -> "icon": {\n$1"id"
  • Sweeping edge: Replace minecraft:sweeping -> minecraft:sweeping_edge
  • Update yellow shulker box
  • set_nbt
    • Replace set_nbt",\n(\s+)"tag": "\{StoredEnchantments:\[\{lvl:(\d+)s,id:\\"([a-z_:]+)\\"\}\]\}" -> set_components",\n$1"components": {\n$1 "minecraft:stored_enchantments": {\n$1 "$3": $2\n$1 }\n$1}
    • Replace set_nbt",\n(\s+)"tag": "\{CustomModelData:'([a-z0-9_/]+)'\}" -> set_components",\n$1"components": {\n$1 "minecraft:custom_model_data": "$2"\n$1}
    • A lot of manual work!
  • copy_nbt TODO
    • A lot of manual work!

Fixing mcfunction files:

  • Attribute operations
    • Replace (attribute .*) add$ -> $1 add_value
    • Replace (attribute .*) multiply_base$ -> $1 add_multiplied_base
    • Replace (attribute .*) multiply$ -> $1 add_multiplied_total
  • Item stack NBT
    • Replace Count:(\d+)b? -> count:$1
    • Replace \.Count -> .count
  • Particle syntax
    • (^particle| run particle) (minecraft:)?(block|block_marker|falling_dust|dust_pillar) (minecraft:)?([a-z0-9_:]+) -> $1 minecraft:$3{block_state:"minecraft:$5"}
    • (^particle| run particle) (minecraft:)?(dust) ([\d.]+) ([\d.]+) ([\d.]+) ([\d.]+) -> $1 minecraft:$3{color:[$4,$5,$6],scale:$7}
    • (^particle| run particle) (minecraft:)?(entity_effect) ([\d~^.-]+ [\d~^.-]+ [\d~^.-]+) ([\d.]+) ([\d.]+) ([\d.]+) -> $1 minecraft:$3{color:[$5,$6,$7,$8]} $4 0 0 0 $8
    • Manually fix the remaining particles (^particle| run particle) (minecraft:)?(dust_color_transition|sculk_charge|vibration|shriek)
  • Manual work
    • Search for \.tag|tag\.|tag:\{

Issues found while updating

  • gm4_trapped_signs.json needs to be moved into a gm4_recipes folder
  • lingering_bottle_of_lightning.json tried to set tags Particle and RadiusOnUse, were these ever applied?
  • spore.json and malachite_lump.json use raw custom model data
  • mountaineering new_skis used the existing data of the first iron nugget, instead of the iron boots
  • beehive inspector lists and schedules a main function that doesn't exist
  • phantom scarecrows allowed the curse enchantment on other armor slots than the chest
  • smelteries and tinkering compressors place_down uses raw custom model data

Notes

  • better armour stands no longer matches books with multiple pages
  • crossbow cartridges no longer works with multishot or tipped arrows due to matching exact charged_projectiles component
  • crossbow cartridges beehive predicate no longer checks that there are bees inside
  • orb of ankou shoot_crossbow advancement no longer works with multishot

Possible feature changes

  • Should hypexperia also be applicable to hoes?

SpecialBuilder32 and others added 12 commits May 6, 2024 21:07
Actually we can make it  little better without major refactors yay
* Fix brewing LiaB

* Fix lib brewing custom potion predicate

---------

Co-authored-by: Misode <misoloo64@gmail.com>
- remove extra animal custom data value
- remove modifier since the loot table can now copy just the expected value
- Leash to leash
- loot table reference name key is now value
- animal type is now lead item name
- fix turtle helmet disassembler issue
- fix issues in guidebook and crafting plugins
misode and others added 5 commits May 9, 2024 06:48
…rous dungeons)

- fix moneo netherrite update (blame Epyon)
- fix bamboo mosaic stairs decrafting (blame Special)
- fix unused teleportation anchors destroy (blame BPR)
- fix dangerous dungeons snowy tag (blame kruthers)
- fix moneo tools tag (blame Misode)
* Fix

* Fixes dupe by removing foot stored enchants
- Prevents duplicate enchant&level page from being absorbed
- Updated run from comment that misode pointed out
* move tag storage to components

* update identification loot tables

* update identification loot tables

* remove use of item_modifiers

* honestly don't remember half of what this is... but updates?

* fix up boss fight and final few modifiers

* misode's review

* change armor toughness vanilla UUID

* Update mecha
@misode misode merged commit 1c73b58 into master May 28, 2024
2 checks passed
github-actions bot pushed a commit that referenced this pull request May 28, 2024
* Apply overlays

* Update version numbers and pack format for 1.20.5

* Update all tests to 1.20.5

* Temporarily disable player heads plugins

* Fix location predicates

* Fix nested loot tables

* Fix set lore mode field

* Fix block/fluid/item predicates

* Fix attribute operations

* Potion contents item sub predicates

* Enchantment item sub predicates

* Advancement icons

* Sweeping edge rename

* Update yellow shulker box loot table

* Fix set_nbt loot functions

* Fix component issues with last commit
- set_custom_data function only accepts stringified snbt
- profile properties were incorrectly upgraded
- written_book_content component had a typo

* Upgrade custom model data substitutions

* Fix advancement icon components

* More set_nbt fixes

* Misc errors

* Replace horse jump strength attribute with max_stack_size=1

* Remove lib player heads, update skin cache plugin

* Fix item predicate NBT field to sub predicates

* Count -> count

* scute -> turtle_scute

* Fix remaining issues in loot table, recipe, advancements ignoring copy_nbt

* Fix attribute operations in commands

* Update mecha

* Update copy_nbt in better armour stands, boots of ostara, chairs, and crossbow cartridges

* Update copy_nbt in arborenda and mountaineering

* Metallurgy item validity + update commands

* Update item nbt checks in a few places + sunken treasure

* Update lib trades, DecorItem -> body_armor_item

* Lib trees

* A bunch of tag -> components

* Fix machine block placing

* More tag -> components fixes + re-add b suffix in set_custom_data

* Update mecha

* Update particle syntax

* Display frames + lightning in a bottle

* Update to java 21 and 1.20.5-pre1

* Fix int providers no long wrapped in value field

* Fix remaining particle commands

* Update yellow shulker box loot table

* Some balloon animals updates

* Update packtest to 1.20.5

* Fix some errors in the tests

* Even more tag -> components fixes

* Final tag -> components fixes (except combat expanded)

* Temporarily disable guidebook copy_nbt functions

* Fix some leftover item nbt

* biome -> biomes, structure -> structures, potion

* Fix some more tests
- amplifier:0b is not stored
- add skyaccess to some tests
- replace ambient_entity_effect

* Combat expanded tag -> components fixes

* Replace CMD in item components

* Fix particles in area effect clouds

* Replace some item_used_on_block with default_block_use

* Fix a few more tests

* Fix auto crafting item tag predicates

* Random fixes (enchantment checks, phantom scarecrows, animi)

* Fix area effect cloud NBT

* Fix custom GUI fonts

* Update beet and support 1.20.6

* Remove non-modules from build artifact

* Substitute profile data in mcfunction files

* Update biome extensions to 1.20.5

* Remove debug commands in cozy campfires

* Fix poses pack and bookshelf book title

* Allow module aliases in beet dev

* Fix boots of ostara crafting

* Fix washing tanks not clearing dyed_color component

* Keep boots custom name when crafting boots of ostara

* Fix soul glass has_beam predicate

* Fix block compressors

* Fix Tunnel Bores item drops

* Fix tinkering compressors

*this one was Misodes fault*
And since we're retiring this in 1.21, I didn't do any efficiency refactors

* Remove redundant tc check

Actually we can make it  little better without major refactors yay

* Fix bookshelf inspectors

* Fix: Liquid Minecart breaking, glow ink signs, floating potion advancement

* Lightning in a bottle 1.20.5 (#997)

* Fix brewing LiaB

* Fix lib brewing custom potion predicate

---------

Co-authored-by: Misode <misoloo64@gmail.com>

* Refactor supported versions and releases in beet.yaml

* Disable trouble modules

* Minor version bump for all modules

* Fix Relocators loot function (#999)

* Update Balloon Animals to 1.20.5 (#998)

- remove extra animal custom data value
- remove modifier since the loot table can now copy just the expected value
- Leash to leash
- loot table reference name key is now value
- animal type is now lead item name

* Fix crossbow cartridges tnt fuse

* Fix typo in record crafting

* Update beet to use latest vanilla assets
- fix turtle helmet disassembler issue
- fix issues in guidebook and crafting plugins

* Various fixes (moneo, standard crafting, teleportation anchors, dangerous dungeons)
- fix moneo netherrite update (blame Epyon)
- fix bamboo mosaic stairs decrafting (blame Special)
- fix unused teleportation anchors destroy (blame BPR)
- fix dangerous dungeons snowy tag (blame kruthers)
- fix moneo tools tag (blame Misode)

* Book Binders: 1.20.5 update (#1000)

* Fix

* Fixes dupe by removing foot stored enchants
- Prevents duplicate enchant&level page from being absorbed
- Updated run from comment that misode pointed out

* Update mecha to 0.94.2

* Combat Expanded 1.20.5 (#996)

* move tag storage to components

* update identification loot tables

* update identification loot tables

* remove use of item_modifiers

* honestly don't remember half of what this is... but updates?

* fix up boss fight and final few modifiers

* misode's review

* change armor toughness vanilla UUID

* Update mecha

* Disable zauber and guidebook in tests

* Switch to the ubuntu-24.04 beta runner

* Fix mountaineering crafting recipe

* Revert debug logging

* Store block compressor old components in a new field and merge old tag with custom data

* Remove tnt landmines

* Remove trapped signs

---------

Co-authored-by: SpecialBuilder <specialbuilder32@gmail.com>
Co-authored-by: Epyon <66185010+EpyonProjects@users.noreply.github.com>
Co-authored-by: Thanathor <73304324+TheThanathor@users.noreply.github.com>
@misode misode deleted the update-1.20.5 branch May 28, 2024 15:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants