Skip to content

Comments

Update to 1.20.6 and fix Comet#7

Open
mms0316 wants to merge 15 commits intodlee13:mainfrom
mms0316:1.20.6
Open

Update to 1.20.6 and fix Comet#7
mms0316 wants to merge 15 commits intodlee13:mainfrom
mms0316:1.20.6

Conversation

@mms0316
Copy link
Contributor

@mms0316 mms0316 commented Apr 28, 2025

  • Several renames had to be done as Spigot/Paper API changed names to actual Minecraft names
  • PotionType.UNCRAFTABLE no longer exists, affecting Sake and its (non-)interaction with Potion Sachel.
    • To fix this, a new namespace key was used to be able to identify Sake
    • I did not want to use the existing namespace HoloItems because this would force consumables (like Sake) to start implementing the Consumable interface. Note that it's for this same reason that Secret Brew potions can't be consumed, only thrown, which looks to be an oversight bug.
  • Comet is reenabled and use of Armor Stand were changed to ItemDisplay
  • I did not try to update to 1.21.1 as a lot of Spigot/Paper API was removed. Do tell me if this should be done (in another PR), and I might actually have to do it for Protocol Lib, since Entity Type IDs looked to be different in each Minecraft version in the documentation
  • Update to Java 21 (required for 1.20.5+)

mms0316 and others added 9 commits April 27, 2025 01:31
- Used by Sake, and PotionSatchel had code to specifically ignore PotionType.UNCRAFTABLE
- Changed to a Mundane Potion, which may have unintended consequences (by being able to be converted in other recipes)
- Added new namespace "id" to be able to specifically recognize Sake. If the already existing namespace "key" was used, it would need more changes (such as inheriting Consumable in order to be able to be right-clicked)
- target.getCategory()  throws exceptions in > 1.20.5, and emits a warning to use Tags
mms0316 added 2 commits April 30, 2025 22:49
- It was misleading due to usage of Set. The readded code is needed as a filter to rayTrace in order for Piercing to work
@mms0316
Copy link
Contributor Author

mms0316 commented May 1, 2025

One thing that I really didn't bring back was the sinusoidal movement on Y axis (old Comet moved like _.-._.-._)

Also, old Comet movement was smoother (less choppy). This is very noticeable when using /tick rate below 20

I haven't figured out if there's a way to add interpolation when the axe moves forward

@dlee13
Copy link
Owner

dlee13 commented May 1, 2025

Also, old Comet movement was smoother (less choppy). This is very noticeable when using /tick rate below 20

I haven't figured out if there's a way to add interpolation when the axe moves forward

I believe you're supposed to set the translation once and then the display entity will move every tick with interpolation automatically applied in the client side.

mms0316 added 3 commits May 1, 2025 15:49
- Fixed initial position being different depending on player's angle, by using Translation
- Moved initialization to a Consumer, so it is set before a game tick. This fixes entity dot in minimap in the first tick
- Fixed offhand slant
- Animation was choppy, due to use of teleport(). Fixed by using Translation.
- Note: changed raytracing to use the normalized vector instead of x3 speed vector. This didn't change anything in testing.
@mms0316
Copy link
Contributor Author

mms0316 commented May 2, 2025

Looks good to me now

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.

2 participants