#docs-website
1 messages · Page 13 of 1
Maybe we should make an article about hot swapping?
Isnt hot swapping a bad practice, if I remember correctly one dev from paper team was saying the JVM wqsnt designed for it
they were probably talking about the /reload command
Yea, that was /reload
hotswapping is a dev tool, not a sane runtime tool
while you could maybe use it in prod, you'd generally just be asking for issues as you'd need to cater for a lot of side-effects, including the fact that the JVM can blow up in the process
But generally, yes, if you want to write one, it would be a great addition 🙂
it's already marked as accepted among the repo issues
Hi, quick question, on that page we can see examples using paper.log-level system property at the beginning, but in the section below "List of system properties" I can't find it. Am I missing something obvious?
https://docs.papermc.io/paper/reference/system-properties/
No, it's a bad example of using it
the levels are basically hardcoded by default as programatically messing with that stuff would make it somewhat more inflexible
Ok yes that's why I was surprised to see this then, but I think those examples should be updated to something that actually exist 😅 And do you know where I can find the info about the log level used? I need to send a proof to someone about the actual log level 😅
in the log4j2.xml file in the jar/server resources folder in the repo
Thanks
Hey everybody o/. I am currently writing writing on #573 and it so happens that I have a really really weird bug regarding regex.
The bug happens in /src/utils/releases.ts, where after I fetch a release, I do some regex magic (L51-57) to replace certain contents of the body of the releases returned from the GitHub API to be consistent to how GitHub itself and the Kyori docs render it.
This works absolutely fine in local builds. But in remote, GitHub actions builds, this if-statement in L87-91 gets triggered, which basically means that it cannot find the map method of the RegExpStringIterator, which should be returned by obj.body.matchAll. This is completely inconsistent behavior, and I have no idea what the cause could be. Logging into the build logs from the action, it basically just spams these two lines after I added my debug logging: ```
Object [RegExp String Iterator] {}
Yeah it cannot find the map method
The return type is correct, but the map method is just *gone*. Does anybody have any clue as to where the map method might have disappeared to?
*(I also attached two images. The left side is how it should look, and **does** look in local builds, right side is the result from the CI)*
Hello hello!
I'm actually looking at the available configuration properties in PaperMC, but I'm unable to determine what is the precedence order between the bukkit.yml file and Paper World ones (e.g., paper-world-defaults.yml) when it comes to "ticks per spawn".
bukkit.yml:
ticks-per:
animal-spawns: 400#
monster-spawns: 1#
water-spawns: 1#
water-ambient-spawns: 1#
water-underground-creature-spawns: 1#
axolotl-spawns: 1#
ambient-spawns: 1#
autosave: 6000#
paper-world-defaults.yml:
entities:
spawning:
ticks-per-spawn:
ambient: -1#
axolotls: -1#
creature: -1#
monster: -1#
underground_water_creature: -1#
water_ambient: -1#
water_creature: -1#
And reading current descriptions doesn't help that much :/
bukkit.yml -> ticks-per.ambient-spawns:
Number of ticks between each ambient mob spawn attempt. Set to -1 to use default.
paper-worlds-default.yml -> entities.spawning.ticks-per-spawn.ambiant:
Determines how many ticks there are between attempts to spawn ambient mobs (bats). Default (-1) uses Vanilla spawn rate.
When I read "uses Vanilla spawn rate", then I conclude that should correspond to the spawn rate observable in single player mode. But then... Does that means Bukkit properties are simply ignored since systematically overridden by PaperMC? Or does I miss something? Is there a kind of fallback to Bukkit properties?
Things are confusing for me...
Can someone clarify things for me please? 
Paper configs will take precedence over Bukkit's
Except when you set Papers' to -1, that means "use Bukkit's configs"
Alright! Thank you @south thunder 
Then it would be better to have the doc saying something like "defaults to Bukkit’s properties" instead of "use Vanilla spawn rate"
Hmm, yeah, that's a good point
I can make a contribution then I guess
To be honest I think it's better to deprecate the Bukkit properties too
And just have PaperMC having default values mapping to Vanilla ones
It is planned sometimes in the future to unify the config but it’s not very high priority so we are stuck at what we have. Also, thanks for the contribution 
Understood!
You're welcome 
And thank you you for all your hard work on this amazing project!
of course safari and firefox implement file handles but not the methods to show a picker
nothing amazing but if you remember the old dialog it's a lot better 
(new one also doesn't have broken layout on mobile)
Fancy
/pls-help
will take a look
I already told him what's wrong
iterator prototype functions don't exist in node 20 which the CI runs
so it needs to be bumped or he needs to wrap it in an Array.from()
Like 10 minutes ago. Thank you scorpy 
There we go, now it works nicely https://strokkur424-feat-adventure.papermc-docs.pages.dev/adventure/version-history/adventure/
XD
Maybe can be good add the node version in package
new docs look amazing 👍
I agree! 
why
codestyle issues package.json

Classic
Is there documentation for the https://docs.papermc.io/paper/dev/userdev/ I can find somewhere? I'm struggling with NMS implementation for a lot of things without knowing the fields specific to my version. (1.21.4)
nms is not documented, no
Hi! LifecycleEventManager's link in the Note section tries to find the class from Java javadoc instead of the Paper one https://docs.papermc.io/paper/dev/registries/#mutating-registries
(it should be https://jd.papermc.io/paper/1.21.5/io/papermc/paper/plugin/lifecycle/event/LifecycleEventManager.html instead)
declaration: package: io.papermc.paper.plugin.lifecycle.event, interface: LifecycleEventManager
looks its not the only one...
i make a few test for a remark check for that but i get a few false positive...
effective
@drowsy zincsorry the ping... but because im dump with web things xd
the whole jd things are a thing generate when build not? its not a thing generated when visit the page?
okay... the rule i try to use to detect invalid url not works in that... its good try to make a check when build the url and try to reach if not throw issue? that can make build fails but more easy notice things like that
im checking with the rule the false positives.. maybe i have a virus but one of them not make sense... https://gradleup.com/shadow/ in the docs are show like imperceptiblethoughts (.com) but that url... well i think now redirect to another place...
Gradle plugin to create fat/uber JARs, apply file transforms, and relocate packages for applications and libraries
imperceptiblethoughts was the original domain for shadow's docs
uh shouldn't you be able to just put the lint plugin after the javadoc one and it'll get the correct links?
i try but dont see any checks.. or maybe i bad add the plugin... let me finish a few renames and open a PR if wanna check
ready.
@drowsy zinc by lint you mean remove the two plugins? (Lint and url)
yea
Okay, and how about try to check in the javadoc thing a fetch for the url and throw if not exists?
Also remove the plugin call and dependency or can keep that for allow run the local cli check?
javadoc verification yea sure; for me the cli checker gets a ton of urls as 403 forbidden even though they actually work, so it's not very useful
Ok then im gonna try to refactor the parse jd url for throw an error for notice thats
Is this pr a good idea? https://github.com/PaperMC/docs/pull/592
I have no idea about velocity so someone else needs to check it out
Alright. Thanks
@jagged pecan @spice temple https://github.com/sveltejs/svelte/issues/15182#issuecomment-2905140106 💀
why is ag grid including a second copy of svelte
I heard you didn't like disk space, so your node modules have node modules
Version mismatch? Consult the package-lock or whatever package manager you use
Try an override to make it use the same version
I bet 4 vs 5
yeah copying the dev dependency to overrides and reinstalling fixed it
kind of odd since the ag grid pkg specifies ^5.0.0 which should be satisfied by the dev dep
Try a proper pnpm update to update transitives then
They don't update transitives most of the time to safe time
patch roulette uses bun
hopefully bun update is good enough
ok well thats fixed now, but the svelte update that added attachments also added a new check failure 💀
Where does that link go?
Mmh, that looks like it's missing some times
I would try to inspect the type on the old version to see what it's supposed to be vs what it is now
// eslint-disable-next-line @typescript-eslint/no-explicit-any
export type RestProps = Record<PropertyKey, any>;
``` using any instead of unknown fixes it...
Heh
god knows why it worked before
they probably had to do some funny tricks to make attachments work
(attachments is the replacement for actions which are more composable since you can spread them onto components and elements in the same way)
how tf did I not know about this
oh welp
I am now a vue/nuxt fanboy anyways
(not actually, svelte my beloved still)
there's also a svelte discord but I posted there since I'm using some bits-ui utilities in that component
(mergeProps)
yeah I'm also using svelte-toolbelt and runed
some of the toolbelt stuff should probably be merged into runed, I opened an issue about that
the box utilities are very useful
5
how has the experience been?
I have my own opinions, but always enjoy listening to others
I haven't used other frameworks very much so I don't have many reference points
but generally it has been nice, of course there's less prebuilt stuff than for react
but after looking at react hooks I feel like it's worth it (and I need a bunch of custom components for PR anyway)
yeah, I agree with you
although from the limited time working on hangar, I have been falling in love with vue/nuxt
ecosystem is nice, and the framework itself does remind me slightly of svelte which I am used to
last time I used vue, it was way worse
they improved it a lot
but one thing I keep mentioning that is an absolute bless from heaven compared to svelte are v-if, etc.
does that work for components too or just elements
by elements you mean normal html elements?
either way, works for "everything"
you can use them in template elements, components, html elements
if I am not mistaken, you can use almost all v-(x) in any of those
it's a way better system than how svelte does it honestly
way cleaner
auto import for components also helps a ton
auto imports works for me with svelte except for 'nested' ones in intellij
like, it gets confused by bits having Button.Root and needing to import Button
yeah
https://docs.papermc.io/paper/dev/component-api/i18n/
this warning can be removed fyi
Is that information being send with the initial login packet now or what changed?
Configuration
Ah nice checks out
Maybe that message could again be useful with dialogs sent in config stage?
@small crane hey! appreciate your work on https://github.com/PaperMC/website/pull/133 - thinking of merging it. we're looking to get the migration done soon, wondering what else needs to be done to get it done. is your todo up to date?
Sorry, I suddenly got super busy and didn’t have time to commit on that anymore, but that PR was complete and ok to merge. I don’t really super remember what my next plan was. I think I was working on one of the heavier components but hit a Hangar CORS error and stopped, but that’s fixed now. If I end up getting time I’ll come back to it but atm it’s in a state that anyone could pick up where I stopped
Thank you @small crane 
simplify-remote-item-matching: false didnt this option get removed in some commit?
its still present in the docs
https://github.com/PaperMC/patch-roulette/pull/50 https://papermc-feat-directory-compa.patch-roulette.pages.dev/diff previews working
Multi-file rich diff viewer for GitHub and diff/patch files
Heyo,
I use the jsdelivr devins minimal badges on my github to show what I support like I see many others do. I noticed that they did not have one for Folia, so I figured I would take the backdrop they use and slap the Folia leaf svg onto it. I was curious if there would be any issue with me doing that. I am messaging here because the docs website has an assets branding page that mentions that I can use the PaperMC logomark to represent a project in blogposts and other places to bring attention to the project. It does not mention anything about Folia in particular, though. I was also curious if there was any specific issue with jsdelivr 's paper badge also shown in the screenshot since it does not use the exact logomark provided on the asset page. Is that considered a "modified version of the PaperMC logomark or derivative work of it?"
If I am overthinking things, or in an obviously wrong spot to ask this, feel free to just tell me so 🙂
I’m not aware of any issues but I’ll CC some people :)
I'll get back to you soon.
Thank you
as i understand it, because of the hardfork spigot plugins aren't garunteed to work with paper anymore right? even if for now most of them will probably function fine?
because i dont think this article mentions that https://docs.papermc.io/paper/adding-plugins/
unless im understanding it incorrectly
all plugins made before softspoon happened will continue to work for the forseeable future. there will be proper communication/documentation/replacement api done to accomodate users of spigot api when it gets ripped out farther down the line. any plugins that are based on any spigot api that were introduced into spigot after softspoon happened will not work on paper. some new spigot api may work if paper cherrypicks spigot changes at the maintainer's discretion
ok
but the softspoon has happened already right? so the article should mention it but it does not at the moment
Yeah, most likely no one got around to it yet
hi all, does PaperMC have some kind of plugin requests channel? I'm looking to write a plugin
I don't see how this question relates to our documentation, but: Do you mean you're looking for help writing a plugin, or you're looking to hire someone? If the former, #paper-dev , if the latter, no. I suggest helpchat (see #community-guilds ) for that.
Sorry, I was imagining you might have something like the old spigot, there used to be a some kind of spigot forum for this. I'm pretty sure it's dead.
Thanks for the pointer!
I feel like this is way more clear which section I linked to :3
need to figure out how to make the new compare files gui not ugly (old on top of white line)
maybe one of these would be better than checkbox
🪤 Summoning the webdev lurking
this seems a bit better
(ignore the uneven gap around the arrow, some debug element is there)
the github auth doesn't seems to works anymore since the migration and the app button still redirect to patch roulette instead of diffs-dev
I have the link fix for the button locally, let me push it
and I'll test the gh auth
D
. . . is this the correct channel/server for this message?
look at the pinned issuein the screenshot
Ahh - the image thumb was too small for me to see without clicking.
fixed
thanks
anyone know how I can get the CORS error to display to the user instead of 'TypeError: Failed to fetch'
ideally in a browser-agnostic way 
private readonly urlResolver = $derived.by(() => {
let url = this.url;
if (!url.startsWith("http://") && !url.startsWith("https://")) {
url = `https://${url}`;
}
return lazyPromise(async () => {
let threw = false;
try {
const response = await fetch(url);
if (!response.ok) {
threw = true;
throw new Error(`
Failed to fetch from URL: ${url}
Status: ${response.status}
Body:
${await response.text()}`);
}
return await response.blob();
} catch (e) {
if (threw) {
throw e;
}
throw new Error(`
Failed to fetch from URL: ${url}
Error:
${e instanceof Error ? e.message : e}`);
}
});
});
I gave up: ```ts
throw new Error(Failed to fetch from URL: ${url}\nSome errors, such as those caused by CORS, will only print in the console.\nCause: ${e});
interesting that tailwind doesn't include ```css
textarea {
vertical-align: bottom
}
with the default setting textareas have extra margin on the bottom in chrome and ff
gonna emit the average data converter diff
I should create an action that comments a link to view the PR diff in the preview viewer 
does no one else have this issue? been a couple of weeks like this. the entire site jitters if u click something on the sidebar
not an issue in safari, but it is an issue in chrome even an incognito tab w/ no extensions
looks like chrome doesn't want to preload the font or something
it makes it quite the horrific experience
Other astro/starlight docs don't have this issue w/ chrome
we don't use the system font unlike the rest so
are you able to replicate on your end?
on mobile chrome yea
could you see if it's fixed?
With triangle
took me a while to see what you mean but now that i see it i prefer with
Where to Download Paper 1.16.5?
Also wrong channel @acoustic wing
looks pretty neat
so this website is mainly to show differences between commits?
or uh
?
It's a better diff viewer since githubs got increasingly worse
And then jmp escalated from there
Some criticism: Found it a bit confusing to use when I first used it
not sure if it's just the layout or idk
but after you understand it it's pretty easy
Maybe a drop down to select which option you want to use
Like from patch, comparing two files directly, etc
where? xd
a bug
i have it written down already since i ran into
it before
but you can open an issue if you want
I mean, sure, why not
bro what is this discord
is this for roblox?
@hard quartz
@pliant canopy
@hard quartz yo bro help me out for a bit
@uneven ocean you can read #welcome if you want to know what this server is about. (though idk how you end up here without knowing)
my bad...just that this discord hs alot of channels
It does, yeah. But randomly pinging people is generally considered rude in any Discord. Just FYI.
Yeah, my bad for that...
Sorry if this is the wrong place to ask, am I doing something wrong here?
I guess it failed to load the perms list or something, #hangar-help too
removing padding around the main content yes or no
personally I think I should have done it sooner
still need to figure out how to place nicely with mobile safari's dynamic viewport... not sure if I can or want to use the body as the virtual list
right-side file tree also coming for all the weirdos who like that :p
better in some ways but overall I think it's worse just making that single change
I think the top bars location shouldn’t change at all. Only the dynamic content should affect the height. Otherwise it looks way to jumpy somehow.
Seeing it only on the screenshots on mobile with padding looks better imo
With padding is clearly better
It doesn't remove much space, but it nicely seperate the parts from eachother imo
Docs team hates this one simple trick
We resent all authority
@drowsy zinc I took the liberty to rebase my feat/adventure branch to the latest main commit, hope you don't mind. Thought I should notify you of this before you change something locally and get a fat merge conflict
you're one second too late
Damnit 
I cherry-picked one commit of mine because it fixed a bug with velocity's JD social icon
Should I rebase again?
yeah if you don't mind
sure
Yay, conflict 
(Nothing I cannot handle though, dw)
Also, uh, cloudflare pages broke?
needs some time to propagate probably
Weird, I have never seen that before
Anyways, I might as well ask you directly @drowsy zinc: Did you remove the quick fix I had here?
Just need to verify that my rebase didn't break something
yes
Okay good
There were quite a few conflicts for some reason lol
only in the astro config and that one version util though
There, all rebased
fyi, I'm already working on the documentation changes for the maven central stuff
you should make mention of the region-specific mirrors:
NA: https://maven-central.storage-download.googleapis.com/maven2/
EU: https://maven-central-eu.storage-download.googleapis.com/maven2/
Asia: https://maven-central-asia.storage-download.googleapis.com/maven2/
#hangar-help and as Mini said, keep reloading if you get 400
Oh, I dont have that channel lol
hey I have a suggestion, have you ever considered adding like a search bar for configs? I always forget which config a setting is in and would find it much easier to just search for it
hmm, I could try to get it to be indexed in the main search
no guarantees it'll work out though
Is this still the case?
Why wouldn't it be 💀
Oh you meant the theme, I thought you meant the code example
the theme lol
No the theme changed since the Astro migration. @drowsy zinc which one is it now?
i may be blind but can't find it in the code
apparently if none is specified it defaults to github-dark, but it doesn't look like github-dark
tbf that could simply be replaced with Player#sendRichMessage()
that util method is essentially useless
I think it is night owl
That's the default starlight theme
There are more uses for components than sending a message 😭
that is true....
and a very good point....
I asked in the astro discord a long while back
👍
although idk
// Constant holding the mm instance named MM
MM.deserialize(""); // Can receive placeholders too!
// or
Components.mm("");
Static import mm()
And placeholders can be done with adding a TagResolver varargs param
Anyways, not the point
wow, ok I haven't look at the docs page in forever. it looks pretty nice.
I like the dropdown to switch entire projects, that's smth I've been wanting for a while. But tied in with that, I kinda wanted the buttons on the top to be Admininstration, Development, Contributing...
Because I want the sidebar to remove one level
how often are you wanting to read docs pages inside multiple of the top level categories? I feel like the extra level is just unneeded and takes up space
Making it so everything in the box was all that's visible if you are in the administration section of the paper docs
Yeah I know what you mean. Odds are if you are opening docs you are either a dev or an admin
jetbrains mono font
theres an incorrect value in the docs
https://jd.papermc.io/paper/1.21.6/org/bukkit/spawner/Spawner.html#getMaxNearbyEntities()
the default value is actually 6, not 16
It also says „set the new…“ but I think it’s meant to say „get…“ no?
open an issue and/or PR pls 🙂
@random pollen (no clue where else to ping you for this lmao) but two things:
- If the new papermc-pr-publishing workflow, do you think it could make sense to temporarily set the message contents to "Still building" or something during builds so that one doesn't accidentally grab an outdated artefact while the PR is still building? I know it says "Last updated for", but I doubt everybody just knows the commit hash of the latest one or cares to check lol
- Do you plan to add a way to download PR versions on your run-task gradle plugin?
I can prolly look at the first one
https://i.imgur.com/ApgQjwr.png and it's not even the right page 
¯_(ツ)_/¯
Is Kenny using bing?!
no LMAO
lol what? Is that the gist I originally wrote the spec for it on?
https://docs.papermc.io/velocity/configuration/ looks really ugly
love tables
more importantly the page doesn't even have all entries from the configuration file
wait you are german?
can we also look at https://github.com/PaperMC/docs/pull/573 soon @neon epoch
Redo of #569.
Differences between the current Kyori docs:
Whilst the index pages exist path wise, they aren't directly accessible via the side bar. I am not sure how, or even if it is poss...
80 files changed 🫠
Yeah lemme take a look now if not between starting a job and moving house it’s gonna take a bit
ollie I apologize in advance for my cursed jq
reminds me that we really need to finish the website migration too :(
Ok i reviewed it - 1:30 am and i just got home from a flight but 😂
It’s really nice, good work. I skimmed the platform implementation stuff cause frankly I don’t know enough to comment on half of them
Was just a couple places where, as I say in the review, we are mentioning specific versions and idk if that’s intentional
I’m not gonna be able to test the fill code examples - but they look good. Happy for someone else to test and merge :)
To be fair, most of it is just directly copied from the current adventure docs
There are just some unavoidable formatting changes no?
Likely
Am I overlooking something or does Fill v3 no longer give you the project Name?
an ID
Yeah you still get the id but no longer the name. I guess I could hardcode the names but it's not that clean.
most of the time it’s just the id but with the first letter uppercased right
it will soon; I have a few changes locally that are coming

should be live now
what all changed besides adding 'name'
just that for now; delaying the rest
what's the rest :p?
🙊
riley changing the api to make my life hard
Great minds think alike
Finally, this is moving along 
Though this is blocked on that one bug report by scorp anyways
I have a feeling one of us will have to fix that because the issue isn't moving along
I already tried looking into it but no idea where to start
the easy solution would be to disable the stylesheet inlining, but that makes for ugly layout shifts
so that's a no-go
I mean, something something include the css stylesheet, but I also dunno
that's all I could read out from the issue comment
much faster merges than Paper ;)
@steady fulcrum the javadoc link to folia broke, folia only hosts major version javadocs, so link would be https://jd.papermc.io/folia/1.21/
package index
velocity is broken too, idk why yet
ah, velocity needs to be https://jd.papermc.io/velocity/3.4.0/
package index
@opal flare thoughts on https://github.com/seiama/javaducks/pull/22 ?
I have seen multiple 3rd party websites to workaround this now.....
Cursed but fixable. I’ll get a PR rolling for it.
Guess no other way than to special case it all
Or, mmmh, the API could include that info?
But right now java doc hosting is all manual
Yeah I'll have to special case it.
I think before the website always just used the version group listing
merged, I thought I merged it ages ago
Ty
folia can go on the website now
get ignored
Build explorer on folia dl page opens the paper build explorer
scroll down
It would still be a nice feature to have like query param for that
It's a frequent issue
Oh, also, wanna gift the commit view some work wrap?
One is a single commit the other is multiple commits within one release
the commit view including the whole commit description looks weird to me, having some buttons to expand the full description would seem nice
yeah it feels a little verbose (especially for leaf commits)
Fwiw, 1 commit would word wrap, the others then wouldn't 
Any chance we can get pngs of Velocity' logo on https://docs.papermc.io/misc/assets/?
cc @opal flare
why are we now going to switch to nextjs 15
It exists already - https://assets.papermc.io/brand/velocity_logo.256x128.png
/cc @steady fulcrum
mf hiding it from me
you'll also find folia_logo.256x139.png useful
just wondering does papermc.io use wordpress or smth like that? or does it use custom code like react, node.js, etc
nextjs
the plan was to switch to astro but that apparently(...?) got scrapped
we are reevalutating the options, yes
well the pr got closed and an issue assigned to jroy for nextjs 15 got opened
I see
if I like build my own site somethign similar to papermc.io what should I use?
i know it is a bit offtopic
for the docs side we don't change too much from the base starlight setup
but for the landing page and downloads/etc you can use whatever
Btw I did fix a few of the issues mentioned in https://github.com/PaperMC/website/pull/143 alongside some stuff to make commits less pain to look at when they're long.
Mostly parsing out commit links and turning newlines into <br>
Folia for example, although idk how to feel about the buttons being vertically centered with text that tall 
yeah probably want top align with a thin divider
do you also wanna fix the seo i accidentally forgot to swap when i copied papers page
check minis review on my pr
that is papers seo but called folia not folias actually desc/seo
ah
https://github.com/PaperMC/website/blob/main/src/pages/software/folia/index.tsx#L21 actually seo should prob be this
I think having Download Folia first is fine
It'll hit when you google how to download folia
that bit yeah, mostly the rest of it
lgtm
that's better
i don't think the commit message should be included or maybe only in a hover popup
Fair, it's been something I've been fighting on my webhook too. Since leafpeople like to make long commit descriptions.
yeah that makes it a lot better
long proper

yes I am calling myself out
looks betterer
the padding around the button is uneven somehow

bottom shorter than top
fuck me it is
Fill gives builds certain colours based on the channel, should likely do that too instead of just the red for the build number. I can give you the colours I use
Ya pls do
public static final Color COLOR_BLUE = Color.of(0x4fc3f7);
public static final Color COLOR_GREEN = Color.of(0x4db6ac);
public static final Color COLOR_PINK = Color.of(0xf06292);
public static final Color COLOR_ORANGE = Color.of(0xffb74d);
public static final Color COLOR_PURPLE = Color.of(0x7e57c2);
public static final Color COLOR_RED = Color.of(0xff6f61);
public static final Color COLOR_YELLOW = Color.of(0xfff176);
Alpha is red, Beta is yellow, Stable is blue, Recommended is green
holy flashbang
pretty poor contrast with the text
You can use colorhexa.com to get a darker version of the colour
Just make sure they all match
(If you need to make it darker)
is riley colour blind
https://www.colorhexa.com/4db6ac this is apparently green
It's kinda green
In a RGB color space, hex #4db6ac is composed of 30.2% red, 71.4% green and 67.5% blue.


its ugly. reminds me of the color of operating rooms
good thing only velocity uses it
If you want to make a new palette of colors that look good on the website in both light and dark, you can do that
Just give them to me so I can update other things with them
I ain't no artist
it may be my last name
I'll make it easily configurable so someone else can go fuck withi t
lmao
consider yourself colored
How about a color that's more similar to the link color?
@burnt ice your regex change PR feels kind of fragile, couldn't a diff theoretically still false positive for a signature?
it's probably good to move away from a regex there in general, but for now maybe we could do something like preprocess the string to remove a signature before passing it to the original regex from before your other PR
I completetly agree, regex is yucky
can maybe substr(lastIndexOf(-- ), end)
and then check if theres any more plus minus or header lines in that
if not assume it's a signature?
or idk, that kind of just moves the issue to the last patch
need to take into account the last hunk header...
maybe I'll just merge the PR as-is for now, and then look into using the methods from diff
@burnt ice
Yeah that sounds good. We defo need to cleanup the state handling for that.
I am surprised there are no libraries for that already, however.
there is, diff
we use it for parsing individual patches
it can parse multi-file, but I don't use it because I need a way to inject the image diffs for github
I see
it might be possible, I haven't tried yet
I hope it is
the github website has been so glitchy for me lately
every 5th reload causes half the css to be broken
on every page
I also swear it used to use the PR title by default when squash merging
I had a bug where the same file kept showing up repeatedly
(in github viewer)
yeah the file browser especially has been bad
((I don't use the diff viewer))
I guess you can use the in-browser vscode view
thats probably better
you press . iirc
in-browser vscode view is goated
i use it everytime i need to search for keywords in repositories
So it's not just me? I've been having issues with certain elements being on top of each other
what's the benefit of migrating the website from node+pnpm to bun?
It’s just bun for building as far as I know, and it builds so much faster
Bun is nice and fast
like, unreasonably fast
doesn't it build faster just because it uses turbopack now?
If you want you can still install them with whatever package manager you like of course
oh okay
I just didn't want to install another runtime just for the website if I end up needing to contribute something
We don't use bun exclusive features, you can use whatever runtime and package manager you want
Sadly corepack doesn't support bun yet
And it seems like corepack in general is dying? So idk if it ever will
But that solved the package manager stuff for me in the past
Bun poo-poo ed it's inclusion it looks like
https://github.com/nodejs/corepack/pull/307#issuecomment-1718747222
Although that's not the only thing
would it be ok to cleanup some of the item meta usage?
e.g. item.editMeta(meta -> {
-> item.editPersistentDataContainer(pdc -> {
-# https://docs.papermc.io/paper/dev/pdc/#adding-data
I don't see why not, go for it
Currently, the Last updated tag seems to be mostly useless because it tracks all commits editing the page. What if it only tracked commits that have some sort of indicator they updated that page?
I am not sure I follow?
that was not a page update
the page was just modified but the content wasn't really updated
I mean, the page was still last revised in the commit
I think it's fine
It says "Last updated" and not "Last updated content"
Sure, but it could be improved and could be a nice indicator in what state this site of the docs is in and currently it does not serve that purpose
no docs website ever does that
that commit fixed broken links on that page, which is a meaningful change
our main indicator of up-to-date-ness is the version tag
Altough that seems unused (at least I can only remember maybe 1 page with it)
for now
-# will add that to my pr
if you could note the version those read-only views were added in, that'd be great
Can y’all stop blowing up my emails on my watch whilst I’m swimming 😭
Needs triage
If it’s apple just put in a focus lol
just stop swimming
At the moment to drown or get out before ? :D
I just transferred the diffs.dev github app to papermc
so if you run into issues with github login ping me
works fine for me, only thing i noticed is when you search a text in the diff and nothing is found, then click the arrows you get a NaN / 0
the new dialog registry is missing in https://docs.papermc.io/paper/dev/command-api/arguments/registry if you want to update it Strokkur
Ohh we have a dialog registry now? That's exciting
I'll play around with it a bit and update the page 👍
I think dialogs even deserve a general page for how to use them
Yeah
Well, I guess I have just been given yet another side quest, darnit xd
I will never be able to escape the cycle of projects
You like it, admit it.
B.. but I wanna get to my own projects too, which have been piling up 😭
Then do it?
less talking, more shipping
No one is forcing you to work on paper docs
I am
Yes, scorp is
welp, now I gotta learn dialogs
Is there documentation on it for me to read?
Oh wait, there isn't

one person had a test plugin on their paper fork here
and mm had it as a part of his branch before merge
That intuitive huh? Guess we don’t need docs
Let’s just link to strokkurs repo
mbax made a demonstration
Well, one thing I would like to know: Is it possible to resend the dialog registry to the player via code? Like for commands we have Player#updateCommands. Is there a Dialog-variant of that?
I cannot seem to find any method for that in the JavaDocs
@opal flare are the module names supposed to be cut of like this in the jd?
Feels like somebody screwed up a String.substring
Okay first things first, this is incredibly incredibly verbose and hard to find a good way to format for
And I don't even have any body content
Just format it like this
```java
ctx.getLifecycleManager().registerEventHandler(RegistryEvents.DIALOG.compose(), e -> e.registry().registerWith(DialogKeys.create(Key.key("strokkur:cool_dialog")), builder -> builder.empty().base(DialogBase.create(Component.text("A dialog title", NamedTextColor.GOLD), null, true, false, DialogBase.DialogAfterAction.CLOSE, List.of(), List.of())).type(DialogType.multiAction(List.of(ActionButton.create(Component.text("Cool button", NamedTextColor.GREEN), Component.text("Cool tooltip", NamedTextColor.LIGHT_PURPLE), 250, DialogAction.staticAction(ClickEvent.callback(audience -> audience.sendMessage(Component.text("You're cool!", NamedTextColor.RED))))))).build())));
Hm, maybe like this
Use builders
If you want I can send you how I did it
I am aware, don't worry
Kk
I am just playing around with the possibilities right now

first things first, the size width/height attributes on the item ones are a bit weird

They dont work at least if you add plain message
I havent tested if they're standalone
We dont have api for this. Technically its possible but not without crazy server refactors
the server doesnt support it, the client does
Okay got it
Btw do you know how I can keep a dialog open during config phase?
It shows for me, but just closes instantly
Or do I have to block the AsyncPlayerConnectionConfigureEvent until I get a response from the dialog?
Wait, doesn’t config phase resend it?
No its not resent by default when bumping them back to the config phase, but its possible to do, yes.
Oh I thought it was resent by default.
No, bumping them back to config phase is basically a noop, all their data is retained.
Its alot different than i thought it was
Wait so is this considered the "right way" to do stuff like that: https://pastes.dev/qXl7vkFLeu
Feels awfully hacky
(And adding a processedConnections.remove(event.getConnection()); so it gets cleared lol)
You can use a completable future too
Yeah I would rather use a future
Okay but that works, nice. So how would I make this use a future instead?
(also wth is this)
player texture information, base64 encoded
I thought we had a fix for that kek
Anyways, what would be the future approach?
CompletableFuture<Boolean> future = new CompletableFuture<>();
instead of Boolean
In the AsyncPlayerConnectionConfigureEvent do
boolean res = processedConnections.get(event.getConnection()).join();
in PlayerCustomClickEvent
processedConnections.get(event.getCommonConnection()).complete(false/true);
something like that
Is there any API for modifying the quick actions or custom options dialogs?
I cannot seem to find anything regarding that in the javadocs
you can use the tags
Could you elaborate? I assume you mean the DialogTagKeys, but how can I work with that
yeaa i guess this part is not documented yet on the website
Also more general question, but is there any reason why the pause(boolean) method is exposed at all in the dialog base builder?
Since it only works in singleplayer anyways
Oh no, I smell more documentation work
probably just to match vanilla generally this api is experimental and can change
that's only documented on the javadocs rn (and a PR) see Pre/PostFlattenTagRegistrar
iirc there was a reason to not put it directly on the docs
so you put your custom dialog or built-in inside those tags
so they appear on the client/works on the keybind
Mhmhm
Considering this whole tag registrar api is not documented yet at all, does it make sense for me to show that you can edit the quick actions/etc this way
Or should I leave it out and it will be added as part of the general tag registrar docs pr?
I suspect that this specific part of the dialog api will not survive the next version anyways considering the interest of switching most dialog api to adventure
So I am a bit reserved, eventhough I am only speculating
i think a smaller example should be taken for the "general tag registrar" but probably better to do it after rather than introduce a whole thing
Fair enough
I doubt many people are in need of it atm anyways, and if they do, they can ask in #paper-dev
@drowsy zinc does your JavaDocs link parser/validator not allow for nested classes? I have a jd link declared as jd:paper:io.papermc.paper.registry.data.dialog.DialogBase.Builder, but it complains to me: ```ansi
[35m20:40:44 [ERROR][0m Javadoc link "jd:paper:io.papermc.paper.registry.data.dialog.DialogBase.Builder" is not valid
Stack trace:
[30m at C:/Dev/Web/paper-docs/src/content/docs/paper/dev/api/dialog-api/introduction.mdx[0m
[30m [...] See full stack trace in the browser, or rerun with --verbose.[0m
you need to use $ to denominate inner classes
@burnt ice can I somehow either get an audience or a player from a PlayerCommonConnection?
instanceof GamePlayerConnection -> getPlayer()
instanceof ConfiguringPlayerConnection -> getAudience()
Fair enough
thx
I assume it is either the one or the other? So I cannot just get an audience in general without instanceof-ing both?
I don't assume the player to be in the configuration phase when they use this dialog, but it's still an edge case in my understanding
There you go: https://github.com/PaperMC/docs/pull/621. Side quest completed
Only took me an entire day
Better be grateful 
@neon epoch would you have a problem with it if I were to rebase your mob-goals branch and continue the PR for you?
Alright, fair enough
Expect a superseeding PR somewhen soon™
I just think we should merge the entity pathfinding docs pr soon, as it really is overdue
Calm, I, or probably whoever gets to it first, will close the other lol
IIRC it was blocked waiting on someone who actually knew the API to review
But that was a hot minute ago
So yeah can be done now
Yeahhh okay I see
@random pollen https://github.com/orgs/community/discussions/163932 you scared github with diffs.dev (still ass tho)
Tangentially related (found it using that thread)
:shipit: on GitHub
That existed for absolute ages
It’s just the PR diff viewing, not generic commit diff I think
true
also ik theres this vibe coded app which has been popping off
its on command line tho lol
likeeeeee
love claude
@neon atlas opinion if you started seeing that in my commits?
I always wanted a reason to ask for org ban permissions
at least the code will be good 
lol
is this something we want? https://github.com/PaperMC/website/pull/90
IMO it's not necessary
@steady fulcrum pls rebase https://github.com/PaperMC/website/pull/143, I think some of that was done, like the overflowing commit messages
@neon epoch do you remember the reasoning behind https://github.com/PaperMC/website/pull/108?
Ummmm no tbh
Lemme have a quick think
^ @spice temple think it’s that
I never did get that $5
Ahh
Can you rebase and add it to all pages? Can prolly find and replace for the string of classes
(I really don't like utility css shit, scss + vars so much nicer)
Done, it was fully done, just Riley wanted to review it I think idk 
only when it's merged you have a new sponsor 
reeee I fixed this yesterday, how did you broke it again? 😄
ill fix
huh now it doesnt happen again
uff, the website repo has no action to check that stuff passes lint and tsc and shit
love how I get another error locally
love react
what do you mean!?
I have a giant "use client" on top, I know that its csr....
react really has the most complicated ssr/csr division possible
its live
I also fixed the legacy build page flashing when you opened the build explorer
ok, onto fixing my fix for fill-gradle/waterfall
idk who needs to heard this but waterfall 1.21.7 is now available on the website
I did rebase it, didn't do that though lol, didn't see this
🙏
Thank you
so what is the plan with the adventure docs? @pliant canopy 's pr, is that gonna just flat out replace the advntr docs page, or what?
what would happen with the existing adventure doc links? get redirected to the proper pages..?
yeah, idk. thats why I'm asking. I'm sure its been discussed somewhere
the path structure should be the same minus the /adventure prefix, so it should be easy to redirect
I think riley can tell you more on that, so you should poke him if he doesn't respond here
I believe that is the plan. But yeah we can ask riley to confirm later on the day when he pops up 
somebody wanna play with this? https://delucis.github.io/starlight-llms-txt/
Generate llms.txt files to train large language models on your Starlight documentation website
I'm down and bored lol
yes
nvm gave up when it started throwing 

Has a particle guide come up to discussion yet? I feel like there should be something since the spigot forum one is outdated a bit (at least in the sense of the particle list) https://www.spigotmc.org/threads/comprehensive-particle-spawning-guide-1-13-1-19.343001/page-2
I'd be happy to make a draft if you like the idea :D
pull requests are always open ^^
Yeah draft something up
I know, I just like to ask before doing some work which gets turned down not because of crap code, but because of the idea
i think everything in paper should have a docs page one day
You could make an issue that outlines the proposal, and if that gets greenlit then draft the actual PR. Probably the best way to go about it to have a conversaton about what that would look like.
Contribution is always welcomed! Make a small piece draft and have a discussion here before sinking too much time in it! 
I just wanted to say that I love how much more useful and detailed the docs are these days, big thanks to everyone who's contributed to it!
the team and contributors have been doing an amazing job, yes!
if it’s true it saves them, if it’s false it removes them
feel like that can be a big clarified, somethng like "if set to false the server will remove those empty teams automatically" instead of that second sentence
So I dove into internals (paper server and NMS) and found out why my flame particles startet shooting everywhere. Apparently not setting the speed (extra parameter) defaults to 1 due to paper's implementation?
@Override
public <T> void spawnParticle(Particle particle, double x, double y, double z, int count, double offsetX, double offsetY, double offsetZ, T data) {
this.spawnParticle(particle, x, y, z, count, offsetX, offsetY, offsetZ, 1, data);
}
I guess Mojang decided to use speed all of a sudden for some particles
all the sudden
Are you sure this hasnt been the case for a while?
(Like when did you start seeing this)
yeah I worded that poorly, it's been like this for a year now I think
maybe less
I opened an issue
Cause maybe there was a change in that value at one point
I made a draft PR https://github.com/PaperMC/docs/pull/625
Comments are welcome
Just one question, is it fine to add the exception for typo in COSY?
yeah
you can make it into a .mdx file and encase the identifiers in {/* spellchecker:on */} and {/* spellchecker:off */} lines
This can be very helpful to other and as long as Mojang doenst change much, it shouldn’t be too hard to maintain. My main concern is that, it doesn’t seem to have much stuff on it yet.. is it due to this being a draft and more is planned to be added? Like examples and illusions etc?
Just a draft yes, I will add all the data types, was focusing more on directional particles and how they work
did I do it wrong? IT doesn't seem to work
anyways I added more chapters, still not done, I have way too many types to lol
also TIL, note particles are actually HSB and don't approximate to nearest index of a preset color
Should I include the list of parameters with their description from the javadoc or should I leave that to the users?
I already linked the first method for spawning particles (not the full one with all of the parameters)
<@&748618676189528155>
Trying to find out how to color Particle.EFFECT and I come across this:
Basically meaning I'm cooked on how Mojang colors them
getting there eventually
My PR is now ready for review. A few things I'd like to specifically point out:
How do I fix the typo checker to ignore the contents of <summary>
-# Turns out it was an example using cosy smoke throwing the error, I'm just legally blind and can't read error logs- Those of you who are native american english speakers or speak better american english than me, to check the wording as english is my 2nd language and am not sure if I worded something nice or butchered it.
Comments are very welcome :D
British English is better anyways :D
Denglisch is the best language smk
🥀
https://github.com/PaperMC/docs/pull/626
idk the best way of doing this, it's not liking what I try to do
yeah, but its default is a whole config section.
Is the minecraft:place_recipe just an example or part of the default config?
that is there by default, but you can add more obviously
shouldn't it be 1.21.8?
yes
Just push something, smh
Huh deployments for docs are paused in CF
No clue, did retry the last deployment
Give me push perms 🤝
Why is it that every time I touch cf workers shit I end up in pain
I hate everything about this
What did you break 😅
It used an outdated node version, so Astro complained. I changed "build system version" to update node, because screw you if you want actual control, now it fails with some other dum issue
Ah yeah we updated the node version
14:30:03.019 12:30:03 [ERROR] [astro-d2-integration] An unhandled error occurred while running the "astro:config:setup" hook
14:30:03.426 [AstroUserError] Could not find D2. Please check the installation instructions at https://github.com/terrastruct/d2/blob/master/docs/INSTALL.md
14:30:03.427 Hint:
14:30:03.427 See the error report above for more informations.
14:30:03.427
14:30:03.427 If you believe this is a bug, please file an issue at https://github.com/HiDeoo/astro-d2/issues/new/choose
14:30:03.427 Location:
14:30:03.427 /opt/buildhome/repo/node_modules/.pnpm/astro-d2@0.7.0_astro@5.10.2_@types+node@22.15.16_rollup@4.40.2_typescript@5.8.3_yaml@2.7.1_/node_modules/astro-d2/libs/integration.ts:6:9
Ohhh D2 missing
Yeah you cannot rebuild the site that way
You have to do it with GH actions
So yea, push to main
Why do we still have this worker shit then,m
No clue, but building manually don't work anymore
You might also be able to just retrigger the gh workflow
That should work too
Scorpy added D2 for some of the graphs and since it had to be installed separately, just a build doesn't work
Whatever, fixed
Nice
Lol
I gotta sit down and find a better solution for the D2 issue because I cannot build the project manually either
Or pretend to find a solution so that scorp gets angry at me for it not being good and fixes it himself 
because cf workers and pages are awful
everything about it sucks
No, this time it is not a cf fault
still, my point stays 😄
The build just genuinely doesn't run out-of-the-box
I've never had issues with cf pages
i really tried to use it
i really really tried
cf just didnt want me to
wrangler is the biggest peace of sht the world has ever seen
you run your builds locally it works
you publish from local it works
you let cf pull the changes from gh everything breaks
you fix the auto publishing now locally it doesnt work anymore
nothing about that is reproducible
it might work in prod but not on one pc but another
deployments are done in gh actions
not the pages ci
there is a workflow trigger
install it
you only need it for production builds though, dev works fine without it
No 💀
I want to do prod builds without having to install external software 
It worked fine with the prev graphing integration, idk why we have to use an external one
mermaid generates the diagrams client-side, which frankly doesn't make sense when we're using astro
and it's a giant PITA to set up
But generating the graphs on build time every time feels unnecessary too
Not like they gonna change that often
And it works fine in dev 
they're not regenerated if the output is committed in the repo
So unnecessary. Might as well generate them fully externally and just drop in the done .svg files
I just dislike that it breaks cf pages and simple 'pnpm build' setups
you're welcome to think of a solution to not make it require d2 if it doesn't need to generate anything
I really don't think it's a big deal to install one dependency for production builds though
more doesn't hurt
it's still in scope
I agree could do something like the gradle doc do for kotlin/groovy dsl
alrighty, I like the feature of starlight with synced tabs, will use that
Done
i'm reviewing the PR but yeah you missed some of them
Just one question, some of you have been pointing out to me and the docs say that falling leaves have an alpha channel, but is that true? Because I can't reproduce it not via the particle command, or API. The Client code doesn't even use any alpha channel
hey i need help how do i make a command block clear only a certain item
This isn’t really the right channel for this question.
Also please don’t cross post the same question to multiple channels.
also I just realised cherry leaves apparently don't swirl
Would it be okay to create a custom Note particle color picker and import the svelte code?
Do we really need to do that? What is the reason for it
I think it'll be useful to some people, it's rather simple. Just a slider and a div with a background color changing
Instead of users "guessing" a color
sure
👍
I hope I won't mess up the code, I haven't touched typescript in a few months now 😅
you can reference the slider logic in the start script generator
yeah it's an oversight, the doc needs to be updated and generally your note can just say that only the entity_effect particle support that channel instead of listing the one that don't
kk
I'm guessing I can't use the particle texture since it's Mojang's property?
anyways the color picker is completed and documented
Okay so I've gone through ALL particles in the client code and wrote down everything (except really specific offset modifications which the end user shouldn't really care about). I've also applied most of your review comments.
Therefore, I feel like the PR is now in it's final stages. I kindly ask for final reviews and comments on the PR, as I most likely won't be making major changes anymore.
-# Also I'm still wondering if I can use the Note particle texture or not :D
@twilit fog where are you wanting to use that texture?
Note particle color picker, currently it displays the raw color, minecraft multiplies the grayscale texture with the raw color to achieve the displayed particle
IANAL but i'd assume it's fine
-# For anyone wondering what IANAL means, it means "I am not a lawyer".
i'd just make a note somewhere that you're overlaying the official minecraft particle texture
?
Please do not ping random users, thank you.
(legitimoose now with a ghost ping
)
Is it just me or does this look really cool
Nice work!
damn it really is that small huh
8x8 
@twilit fog Nice work. Yeah particle stuff is fun.
https://github.com/Owen1212055/ParticleHelper/blob/main/api/src/main/java/com/owen1212055/particlehelper/api/type/Particles.java#L52
I had a plugin I used to work on which was meant to expose all of those behaviors. Its a few updates out of date at this point, but maybe you could also double check it.
This also documents the count particle behavior, as that has its own behaviors.
But this was back when entity effect for example used offset for the color, which caused it that the more green a particle was, the higher up it would go, somthn like that lol
Should you just not link adventure javadoc or what? Because I can't seem to find any in the adventure docs pr.
Those pages are mostly just a 1:1 copy of the Kyori Adventure docs, which doesn't have any JavaDocs. Before it gets merged, JavaDocs should probably be added though, yeah
those are afaik not yet setup with the papermc jd system though
Luckily the system is very modular 
If you need to place down any javadocs currently, feel free to just do the links directly. The current pages with Adventure JD do it that way
Those will definitely be replaced if we move to the docs jd system for Adventure stuff
the main point of the docs javadoc link syntax is to make up-to-date links, since stuff from jd.papermc.io doesn't have a latest tag
so it's fine to just use the full links for jd.advntr.dev, since it has a latest tag
(it does now)
the thing is though I thought it would make sense to use the version that latest paper is using
time to remove it 
I'm concerned about plans to make the adventure docs versioned, our current setup doesn't work with starlight's versioning
the current setup is just all projects ("topics") in one collection and the sidebar switches based on the "topic" associated with the page
gonna have to figure something out for that, but that is a problem for the future
More than Paper uses Adventure - the adventure docs should be independent of paper versions or anything
hm, that doesn't seem to work yet, for example https://jd.papermc.io/paper/latest/org/bukkit/entity/Player.html redirects to https://jd.papermc.io/paper/1.21.8/latest/org/bukkit/entity/Player.html
oh I see
declaration: package: org.bukkit.entity, interface: Player
Well yea, but in the PaperMC docs the version that Paper and Velocity use should IMO be used instead of latest but ig you could say that they try to keep up anyway
@drowsy zinc shush it happens every time 😭
Each time I do stuff with patches I commit the patch file too
@drowsy zinc I could need some help with #626. Basically the astro component for rendering the configs does not support having a description on a node which has subnodes. Aka it just ignores the subnodes. I am not well acquainted enough with that component to figure out how to fix that though
And I think it would be unfortunate to drop either the description or the subnodes, as they both add important value
I mean, that forces it to always show up, but that's good enough I guess
@smoky granite PR is out (#629): I would appreciate a review from your side to verify that the information is correct: https://papermc-feat-menu-type-api.papermc-docs.pages.dev/paper/dev/menu-type-api/
And if I might have missed something
Looks good to me as far as actual information goes
Is the fill project open source?
Please don't crosspost
don't think fill is yet
mostly because it is still not in a state where it is like, done done
Hey the particle pr could use some video examples https://github.com/PaperMC/docs/pull/625. similler to the command api docs https://privatech38-particles.papermc-docs.pages.dev/paper/dev/command-api/arguments/registry/
Could you give some examples on what parts could use video examples?
Mainly for some types of particles
Nono - I mean, example for Directional particles, Colored particles, Converging particles simething and such
cause there are a lot of words and not much visual examples
As well as the entire docs could use visual examples for "complex' (?) things when needed
This can make reading comprehension easier
I noticed this feature added to new docs like the data components
https://f44cb79e.papermc-docs.pages.dev/paper/dev/dialogs/
and the upcoming (🙏 ) Dialog Api docs
You know what, fair enough
fine, @pliant canopy do you have any tips on how to make these videos?
Install OBS, go in game, find a nice spot in the world (I usually go with cherry biomes), film your particles, and then make sure that the output file is relatively small as scorp hates big video files
(a CLI tool like ffmpeg is very useful for the latter, as you can just reduce the size of the video rather quickly)
if it's short and doesn't need the user interaction, i.e. pausing, like the command examples, it's also better to just use an animated image than a video
it can be optimized by astro (sharp)
Which, tbh, when showing that particles look cool, that is definitely prefered
I mean, it's not really an official requirement
it should be
so make it official :D
Well, sure
Btw has anybody worked extensively with either the entity pathfinders api or the mob goals api before? If so, I would appreciate if somebody could look over PaperMC/docs#289 and verify whether the information there is correct, up-to-date, and not missing crucial information. The relevant pages are as follows:
only ever used NMS for these, but the pathfinder page should probably mention that the pathfinder path length is limited by the follow_range attribute. Notably the path length itself, so if the mob can't go in a straight line its a lot less than you might expect.
imo a common cause for "why won't my mob go where I want it to go" - its probably too far away
can be overriden with setRequiredPathLength (e.g. Happy Ghast babies do), but that does not seem to be exposed in the API
Ohh interesting, new API yet to be added
Entities also get stuck on rails, they can't go through them or jump over them, kind of silly stuff
Okay so here is the thing, the cut video (1080p60 at 10 seconds length) is 2.5MB while the GIF is 4.8MB at 720p15 10 seconds
Do I just use the video?
Tbh yeah just use the video
@twilit fog some more info btw:
- If you check the files of my recent #632 PR, you can find the
Videocomponent and how to use it. I also have a small patch in that PR, which, if you want to, I can push directly to main rq so that you can use theplay-alwaysproperty on the Video tag
Which yeah sounds like a good idea as it might be useful to you, lemme quickly push something
I think I'll make gifs for the particles that take less than a second or two to display
did ya try webp?
Yeah so if you rebase your PR to main now you should be able to write <Video play-always> for that
WebP and WebM are horrible lol I've only had bad experiences with that. Very slow to encode and big file size 
video autoplay is usually blocked so that's no good either
Hm, is it now. Well that's inconvenient
I mean i've tried encoding into webm and it was 0.5MB bigger
It works fine on my machine 
not on mine
Hmm
just converted a 514.11KiB GIF to 167.54KiB Webp without any loss in quality
alright lemme try
push the gif or webp first and see sharp's build log
Idk, but I've only had bad experiences with it, but that could also be a ffmpeg issue
Scorp, should I revert the commit I just made if it doesn't work for some people anyways? That's kinda annoying
it probably is, I have had issues with webp in ffmpeg in the past
hmm
leave it
can you send me the video?
Smh no 32 rd
hmm?
Paper sucks, can't even do 32rd /s
whats that
render distance
okay but where is the secret paper reference in the image
oh it was 10, i set it to 16 so its not just fog
like I would ever use Sp*got
the secret paper reference is the friends we made along the way
