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

Breaking changes for 1.20 #5281

Open
3 of 17 tasks
KnightMiner opened this issue Dec 17, 2024 · 0 comments
Open
3 of 17 tasks

Breaking changes for 1.20 #5281

KnightMiner opened this issue Dec 17, 2024 · 0 comments
Labels
1.20 Technical Pull requests making changes to workspace or targeted versions

Comments

@KnightMiner
Copy link
Member

KnightMiner commented Dec 17, 2024

To anyone discovering this issue looking for news about 1.20, see the FAQ. This issue is simply a TODO list, not an indicator of update progress.

API changes that can be implemented on 1.19

These changes need to be done before a 1.20 release, but can be implemented on 1.19 with deprecations instead of removals

  • Look into using GameTest for automated tests, not sure how long our method will keep working as mojang changes bootstrap (plus world sensitive tests would be nice to have)
  • Migrate inventory modifier to modifier modules
  • Support global tool definition data loaders

Breaking changes for 1.20

  • Books: Remove all uses of named section transformers in favor of generic section data transformers
  • Replace tank block model property with a fluid and a capacity property

Tools

  • Support merging on tool definition data
  • Narrow return types on ToolStack methods to use NamespaceNBT instead of ModDataNBT when reasonable
  • Move tool stat colors and modifier slot colors to Mantles resource color manager
  • Migrate away from tool loot hook to standard global loot modifiers

Modifiers

  • Remove modifier serializers = use modifier modules with composable instead.
  • Remove typed check on dynamic modifiers, its no longer useful when every modifier is composable
  • Allow composable modifiers to merge modules from multiple data packs.

Recipes

  • Consider - make tool building recipe contain parts list. Move part swapping logic to tool building recipe.
  • Switch Tinker Station and Modifier Workstation to using LazyToolStack for results.
  • Split castable tool casting from castable part swapping, allows us to do tool casting over a non-consumed cast and part swapping without a tool casting recipe.

New 1.20 Features

  • Duplicate armor trims in a casting table using molten diamond at a discount
  • Add trims to all relevant tinkers armors
@KnightMiner KnightMiner added Technical Pull requests making changes to workspace or targeted versions 1.20 labels Dec 17, 2024
@SlimeKnights SlimeKnights locked and limited conversation to collaborators Dec 17, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
1.20 Technical Pull requests making changes to workspace or targeted versions
Projects
None yet
Development

No branches or pull requests

1 participant