From 9a5b5dc2910ae691983b46d83d2ae7d4eab2b683 Mon Sep 17 00:00:00 2001 From: Privatech <99482159+Privatech38@users.noreply.github.com> Date: Wed, 10 Sep 2025 12:38:02 +0200 Subject: [PATCH 1/7] Update colored particles chapter --- src/content/docs/paper/dev/api/particles.mdx | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/content/docs/paper/dev/api/particles.mdx b/src/content/docs/paper/dev/api/particles.mdx index 0f03d1751..7271e7521 100644 --- a/src/content/docs/paper/dev/api/particles.mdx +++ b/src/content/docs/paper/dev/api/particles.mdx @@ -236,12 +236,11 @@ Example of spawning 10 potion effect particles in a 2x2x2 area with a slightly t ![Colored potion effect particles](./assets/particles/orange-spell-particles.webp) :::note -Only the `ENTITY_EFFECT` supports the alpha channel, which is used to create translucent particles. +Only the `ENTITY_EFFECT` particle supports the alpha channel, which is used to create translucent particles. ::: :::caution -The `EFFECT` and `INSTANT_EFFECT` particles cannot be colored with the API and will always be white. Only thrown potions -can color them. +While the `FLASH` particle supports the alpha channel, it is immediately overridden by the client. ::: ### Dust particles From 6c83f164756b5441b805a1467271b385c20135ee Mon Sep 17 00:00:00 2001 From: Privatech <99482159+Privatech38@users.noreply.github.com> Date: Wed, 10 Sep 2025 13:09:12 +0200 Subject: [PATCH 2/7] Add powered particles chapter --- src/content/docs/paper/dev/api/particles.mdx | 21 +++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/src/content/docs/paper/dev/api/particles.mdx b/src/content/docs/paper/dev/api/particles.mdx index 7271e7521..fe5ad0a07 100644 --- a/src/content/docs/paper/dev/api/particles.mdx +++ b/src/content/docs/paper/dev/api/particles.mdx @@ -734,11 +734,6 @@ location. When they reach the player's y level, their vertical velocity will be If the player is moving vertically, the particles will attempt to match the player's vertical velocity. -### Splash particles -The `SPLASH` particle uses the `offsetX` and `offsetZ` arguments to determine the particle's velocity vector, if two conditions are met: -1. `offsetY` is `0` -2. Either `offsetX` or `offsetZ` are not `0` - ### Damage indicator particles The `DAMAGE_INDICATOR` particle adds `1.0` to the provided `offsetY`. @@ -751,3 +746,19 @@ The `DUST_PLUME` particle adds `0.15` to the provided `offsetY`. ### Firefly particles The `FIREFLY` particle uses `offsetY` as the particle's initial y-axis velocity, however, there is 50% chance for the `offsetY`'s sign to be inverted. This means that the particle will either move up or down, with equal probability. + +### Powered particles +The powered particles multiply the particle's velocity vector by the supplied argument. +:::note +The y component of the vector is calculated as `(verticalVelocity - 0.1) * power + 0.1`. +::: + +#### List of powered particles +- EFFECT +- INSTANT_EFFECT +- DRAGON_BREATH + +### Splash particles +The `SPLASH` particle uses the `offsetX` and `offsetZ` arguments to determine the particle's velocity vector, if two conditions are met: +1. `offsetY` is `0` +2. Either `offsetX` or `offsetZ` are not `0` From 5637c91bb7b18e891461586a5dae843987ee80e0 Mon Sep 17 00:00:00 2001 From: Privatech <99482159+Privatech38@users.noreply.github.com> Date: Wed, 10 Sep 2025 13:09:38 +0200 Subject: [PATCH 3/7] Update written for version --- src/content/docs/paper/dev/api/particles.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/content/docs/paper/dev/api/particles.mdx b/src/content/docs/paper/dev/api/particles.mdx index fe5ad0a07..d596877d3 100644 --- a/src/content/docs/paper/dev/api/particles.mdx +++ b/src/content/docs/paper/dev/api/particles.mdx @@ -2,7 +2,7 @@ title: Particles description: A comprehensive guide to particle spawning. slug: paper/dev/particles -version: 1.21.5 +version: 1.21.9 --- import { Tabs, TabItem, Badge } from "@astrojs/starlight/components"; From fe4ed45ff24b45914f1985ba829b1aa02dee254d Mon Sep 17 00:00:00 2001 From: Privatech <99482159+Privatech38@users.noreply.github.com> Date: Sat, 20 Sep 2025 12:55:44 +0200 Subject: [PATCH 4/7] Add caution for INSTANT_EFFECT and EFFECt --- src/content/docs/paper/dev/api/particles.mdx | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/content/docs/paper/dev/api/particles.mdx b/src/content/docs/paper/dev/api/particles.mdx index d596877d3..6d4256ebf 100644 --- a/src/content/docs/paper/dev/api/particles.mdx +++ b/src/content/docs/paper/dev/api/particles.mdx @@ -613,6 +613,12 @@ These particles will use `offsetY` as the particle's y-axis velocity. If you set `offsetX` AND `offsetZ` to `0`, the particle will have almost no x or z-axis velocity, but will still have a y-axis velocity set by the `offsetY` argument. In both cases, `offsetX` and `offsetZ` are not used in the velocity vector. +:::caution +`EFFECT` and `INSTANT_EFFECT` are [powered particles](#powered-particles) and use [`Particle.Spell`](jd:paper:org.bukkit.Particle$Spell) +as their data. Due to the nature of rising particles' final calculated vertical velocity being very low (in range \[-0.056, 0.056\]) +and how powered particles calculate the vertical velocity the resulting vertical velocity will always be the opposite of power. +::: + Example of spawning a `GLOW` particle that moves up: From b3b8b91d59e3b07197743054aaeb68f8ccdb73c1 Mon Sep 17 00:00:00 2001 From: Privatech <99482159+Privatech38@users.noreply.github.com> Date: Sun, 12 Oct 2025 13:59:19 +0200 Subject: [PATCH 5/7] Fix rising particles caution amend description --- src/content/docs/paper/dev/api/particles.mdx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/content/docs/paper/dev/api/particles.mdx b/src/content/docs/paper/dev/api/particles.mdx index 6d4256ebf..198ccc871 100644 --- a/src/content/docs/paper/dev/api/particles.mdx +++ b/src/content/docs/paper/dev/api/particles.mdx @@ -616,7 +616,8 @@ a y-axis velocity set by the `offsetY` argument. In both cases, `offsetX` and `o :::caution `EFFECT` and `INSTANT_EFFECT` are [powered particles](#powered-particles) and use [`Particle.Spell`](jd:paper:org.bukkit.Particle$Spell) as their data. Due to the nature of rising particles' final calculated vertical velocity being very low (in range \[-0.056, 0.056\]) -and how powered particles calculate the vertical velocity the resulting vertical velocity will always be the opposite of power. +and how powered particles calculate the vertical velocity, the resulting vertical velocity will always be the opposite of +`power` value's sign. ::: Example of spawning a `GLOW` particle that moves up: From 23f09be041a8a9c0d256029dc84a0630952d04c4 Mon Sep 17 00:00:00 2001 From: Privatech <99482159+Privatech38@users.noreply.github.com> Date: Sun, 12 Oct 2025 14:08:00 +0200 Subject: [PATCH 6/7] Override LATEST_PAPER_RELEASE to 1.21.10 to allow referencing new class --- src/utils/versions.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/utils/versions.ts b/src/utils/versions.ts index 09c18c8a9..55b88a6e1 100644 --- a/src/utils/versions.ts +++ b/src/utils/versions.ts @@ -66,7 +66,8 @@ const findLatest = async (project: Project): Promise => { const paperProject = await fetchProject("paper"); -export const LATEST_PAPER_RELEASE = await findLatest(paperProject); +// export const LATEST_PAPER_RELEASE = await findLatest(paperProject); +export const LATEST_PAPER_RELEASE = "1.21.10"; const velocityProject = await fetchProject("velocity"); From 53465bbe34ec0d43cb0b63f33e6915879f3c638b Mon Sep 17 00:00:00 2001 From: Privatech <99482159+Privatech38@users.noreply.github.com> Date: Sun, 12 Oct 2025 14:10:24 +0200 Subject: [PATCH 7/7] Clarify caution note for FLASH and TINTED_LEAVES particles regarding ARGB color usage --- src/content/docs/paper/dev/api/particles.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/content/docs/paper/dev/api/particles.mdx b/src/content/docs/paper/dev/api/particles.mdx index 198ccc871..d9af2c3a0 100644 --- a/src/content/docs/paper/dev/api/particles.mdx +++ b/src/content/docs/paper/dev/api/particles.mdx @@ -240,7 +240,7 @@ Only the `ENTITY_EFFECT` particle supports the alpha channel, which is used to c ::: :::caution -While the `FLASH` particle supports the alpha channel, it is immediately overridden by the client. +While `FLASH` and `TINTED_LEAVES` particles take an ARGB color, the alpha channel is ignored. ::: ### Dust particles