#1.21 Snapshots

1 messages · Page 2 of 1

austere ocean
#

needs more confetti

jagged stag
#

could technically automate the bot creating a porting thread if one doesn't exist

#

but threads owned by bots are bad™️

digital scaffold
#

And there's no ownership transfer I don't think

austere ocean
digital scaffold
#

Wait, you can transfer ownership to bots?

#

Why?

#

Oh right that

light arrow
#

sooo neoform?

white pond
#

Should I take a look?

jagged stag
#

i mean there's not really any rush to update

white pond
#

well, just overwrote my module metadata changes to neoform by switching to 1.21-dev and clicking "force checkout" a little too quickly concern

#

i suppose I might as well do it now

torn notch
#

Did they do anything interesting with DFU? Saw the major version was bumped, but GH commits don't reveal anything major

fallow horizon
#

the way the DataFixerUpper instance is created changed in a breaking way, that's why

torn notch
#

Ah

#

Just looking at the commit messages was not enough I see... I should know better by now

white pond
white pond
#

@light arrow neoform is 24w19b-20240510.192321

half plaza
#

@light arrow 24w19b-20240510.193815 for the one that works with ecj

white pond
#

We should add an ECJ compile check to the workflow /sigh

twilit slate
#

mojira is busy....
hmmmm

but they are not "that" busy
so it is obvious that we are gonna get that new feature that they have been working on so obviously

torn notch
#

or something else entirely

lone tree
#

Developers working on datapacks haven't fixed any bugs

steep copper
#

inb4 component blocks

#

or entity rework after I grump'd at a bunch of people doing Gander/moddev stuff, lol

torn notch
#

think they'll move block properties to components?

#

yet another data component type registry

digital scaffold
# steep copper inb4 component blocks

In theory block entities don't need to exist. Any block state that doesn't have its default components can't just be shoved into a Map<BlockPos, DataComponentPatch> (except they'd do Long2ObjecrMap<DataComponentPatch>, but you get my point)

steep copper
#

That's what I'm hoping happens - the concept of block entities dies

#

You just have blocks and renderers

digital scaffold
#

Huh

fallow horizon
#

to be fair this map probably hasn't been touched in 10 years aside from 1.20.5 moving to a fastutil object map

digital scaffold
#

They use shorts in networking

steep copper
#

The second one could easily just be a set of BlockPos

#

First one.. probably a component set

late sentinel
#

weirdly the second one is different in 1.20.6

    protected final Map<BlockPos, CompoundTag> pendingBlockEntities = Maps.newHashMap();
    protected final Map<BlockPos, BlockEntity> blockEntities = new Object2ObjectOpenHashMap<>();
fallow horizon
#

sniped

late sentinel
#

stab

#

why did they only change the second one though thonk

#

there's like 4 maps here

fallow horizon
#

the first one likely isn't hot

late sentinel
#

ChunkAccess

fallow horizon
#

ChunkAccess

#

sniped again

late sentinel
steep copper
digital scaffold
lone tree
modest helm
#

ohh, do players not get "respawned" anymore?

austere ocean
#

iirc that was because the exit portal calls PlayerList#respawn (which destroys the ServerPlayer and creates a new one, ask me how I know harold)

steep copper
#

imagine if Mojang was sneakily prepping for another dimension

#

and this got in the way

humble salmon
#

I mean, the nether works fine, it's just the end that's a special bunny

lone tree
#

Next snapshot for Wednesday or Friday?

digital scaffold
#

I think Wednesday

#

I don't think Friday will be a regular thing

#

Though they could do Friday to line it up with the 15 year anniversary

lone tree
#

Yeah...

#

We'll see tomorrow

lone tree
#

Old person /j

modest helm
austere ocean
#

does it?

modest helm
#

oh, I just realised I only ever tested that part on a Fabric server, so I'm not 100% sure if it's a vanilla thing..

tacit oxide
#

It has so many side effects

#

What is the purpose of calling it

austere ocean
#

ask Mojang harold

tacit oxide
#

Notch

#

Notch did that one

#

Could be for lore purposes lol

#

I watched a theory video and it talked about the end being death or a dream

austere ocean
#

lol

tacit oxide
#

So the fact that the player "respawns" upon exit is interesting

austere ocean
#

lore so deep they buried it in the guts of the game as an implementation detail

light arrow
uncut birch
#

you also appear at your bed rather than any other defined location

light arrow
#

I'm curious how they fixed that

light arrow
#

🐸 day

#

~ 5h

red sigil
#

hopefully no last minute issues delaying it this time

#

unless they permanently move to fridays

odd flare
#

`"yeah uhhh... my new pc also crashed, which had the changelogs on it again.... we really need to make a better solution for this....."

austere ocean
jagged stag
#

we're froggin

queen fog
#

castor is the new frog

lone tree
#

Capybara

odd flare
#

hmmmm
sounds like they are adding something [REDACTED]

light arrow
hard ivy
#

oh lawd it happenin

lone tree
#

Aether in Minecraft??

light arrow
#

did anyone post a teaser?

austere ocean
#

data driven mob effects, bet

lone tree
#

nope

hard ivy
#

kek you'd think they would tangle themselves up in trying to get the Aether name

light arrow
austere ocean
#

gah, ping

light arrow
#

they already did the base for it by abstracting recipes away from containers

hard ivy
austere ocean
#

melon

#

what's it called

remote void
#

The new update will be a ConcurrentModificationException

austere ocean
#

cantaloupe

hard ivy
#

aww

queen fog
#

cute frog

austere ocean
#

not sure that's correct squint

#

whatever

rotund quail
#

it looks more like a squash to me

lone tree
jagged stag
remote void
#

Genius idea to modify an HTTPClient’s default header every time for an api call and then concurrently call the api a bunch of times

#

Now have to unravel that

hard ivy
#

blinks

#

what kinda

jagged stag
#

just fork the client smh

#

the quick and dirty fix

alpine pelicanBOT
#

After some recent irregularities in our Snapshot schedule (public holidays, we're looking at you!) we're back to shipping on a Wednesday! Among other things, 24w20a includes a buff to the amount of Redstone Dust dropped by Witches, as well as a long reques...

light arrow
#

@hard ivy sound the alarm

light arrow
#

Custom set base attributes are now kept when respawning
Oh thank god

alpine pelicanBOT
#

New version detected: 24w20a.

#

After some recent irregularities in our Snapshot schedule (public holidays, we're looking at you!) we're back to shipping on a Wednesday! Among other things, 24w20a includes a buff to the amount of Redstone Dust dropped by Witches, as well as a long reques...

digital scaffold
#

Indeed

hard ivy
#

IT BEGINS

rotund quail
#

Lmao I set up an automation on my laptop while I was in a lecture since I was interested in firing order, but Instead it triggered when I was walking between lectures lol

light arrow
#

no potion recipes this week it seems

hard ivy
#

they lowered the volume of pistons thinkies

tacit oxide
#

Boring snapshot this week

hard ivy
#

lots o' fixes

odd flare
tacit oxide
#

We must be getting close to 1.21

hard ivy
#

or they're still churning content behind closed doors thinkies

odd flare
#

nah, big ones can still happen

light arrow
twilit slate
#

i almost got it.. XD

odd flare
agile canyon
#

Interesting, alot of the RenderSystem#assert* lines have been removed

#

Ah, that's because the game thread has been removed from RenderSystem

light arrow
#

hey gegy will the potion recipe rework be in 1.21 or are you just doing the ground work now and the full thing later?

twilit slate
#

why is the snowman commit from 2h ago?
is this some time zone thing?

fallow horizon
hard ivy
twilit slate
#

ahh cool

hard ivy
#

releaseTime, it seems

twilit slate
#

looks like a bunch of rendering thread related changes...

agile canyon
twilit slate
#

hmmm

light arrow
#

hmmm Potion.CODEC and MobEffect.CODEC are a thing now... maybe part of the preparation

twilit slate
#

"THE PREPARATION"

hard ivy
#

IT BEGINS

light arrow
#

ugh they changed equipment slot again

red sigil
#

Among other things, 24w20a includes a buff to the amount of Redstone Dust dropped by Witches, as well as a long requested change to make Piston sounds a tad more pleasing to the ear.
some people will be very happy about that

#

looks in the direction of TangoTek, Etho, Docm77, et al.

hard ivy
#

more redstone!

viscid crane
#

Wow, that is one underwhelming snapshot

agile canyon
#

Delta time change!

#

floats are being replaced by DeltaTracker

viscid crane
#

A drop table change, a sound change and some json codec changes

agile canyon
#

Which basically holds the partial tick

viscid crane
#

What's it do

#

Other than hold the partial tick?

agile canyon
#

It's basically the Timer class, except in interface form

hard ivy
#

this reminds me of a puzzle of when we had that slight issue because the pause partial tick wasn't being passed down properly when paused thinkies

viscid crane
#

So there is no purpose to it other than to abstract something holding the partial tick?

#

If I wouldn't know any better, this feels like something added specificially to break essentially everything rendering related

hard ivy
#

nah, that wouldn't break anything rendering related

viscid crane
#

But introduce a bunch of refactoring

#

(Which is what I mean)

hard ivy
#

ah

#

I think that won't matter too much, since most rendering doesn't distinguish from (actual) partial tick vs paused partial tick

agile canyon
#

Well, now you can!

#

As the method to get the partial tick takes in a boolean

hard ivy
#

(and indeed, GameRenderer iirc the class used to be called with this.paused ? this.pausePartialTick : partialTick, because of how insignificant the difference was for rendering)

digital scaffold
#

Well this will be annoying for my multiversion mod

agile canyon
#

Though if the game is frozen, everything will still freeze

#

But you can also get the delta ticks and realtime ticks

#

Dimension stuff seems to have changed a bit

#

But still roughly the same

light arrow
#

PortalInfo is no more

hard ivy
#

updated Credits squirr

lone tree
#

They broke the Minecraft demo timer X)

hard ivy
#

eyy, the Head of Franchise Player Ecosystem got promoted to Chief Operating Officer thinkies

viscid crane
#

And that title was an example

#

lol

hard ivy
#

(they existed in the same position before the update, the entry just got shifted up one)

#

smh, missing comma

red sigil
hard ivy
#

bug report! bug report! /jk

viscid crane
#

God, all these changes make me not look foward to 1.21 releasing

#

I will need to rewrite so much shit

#

just due to refactoring and datafication

digital scaffold
#

So far there's been so few changes compared to, like 1.20.2-1.20.6

#

Or do you mean from 1.20.1?

hard ivy
#

hmmmmm

#

I wonder how many people have actually seen the credits in full...

#

I shall endeavor to be one of them

viscid crane
digital scaffold
#

Ah pain

hard ivy
#

...after I finish checking the changes to the JSON

viscid crane
#

The 1.20 updates are pretty minimal, but 1.20.x -> 1.21 is going to be a nightmare

digital scaffold
#

1.20.2, 1.20.4, and 1.20.6 were all huge

digital scaffold
viscid crane
#

the snapshot cycle also just started lmao

digital scaffold
#

So far they haven't completely rewritten much of anything

hard ivy
#

ey, they expanded the credits section on quality assessment

viscid crane
#

Enchantments, and those are just the start

agile canyon
#

Light???

digital scaffold
#

Compared to rewriting advancements, items, and networking, yes

hard ivy
lone tree
#

Easy mode: 1.20 -> 1.20.1
Normal mode: 1.18.1 -> 1.18.2
Hard mode: 1.20.4 -> 1.20.5

digital scaffold
#

They also did advancement reworks on 2/3 of those versions

#

Each advancement rework took me like 6 hours (or more) to port

#

And that's just from the advancements

half plaza
#

When updating patches consists of deleting 2 files and running a couple of gradle tasks

digital scaffold
#

Although tbf my mod is very advancement heavy

#

For my most popular mod, however, 1.20.4 -> 1.20.5 was actually the easiest I've had in a while

#

Most of the stuff I had to do was Java 21 related

#

However, as hard as rewriting makes porting, I'm glad they're rewriting stuff

agile canyon
#

Ah yes, when dividing by 0, the answer is always 0

hard ivy
#

finally, we have solved math

jagged stag
#

After some recent irregularities in our Snapshot schedule (public holidays, we're looking at you!) we're back to shipping on a Wednesday!

#

haha good joke

viscid crane
#

They did though

#

It‘s just pretty minor

steep copper
#

oh god rendering changes

#

pcrowPanic Gander and CC, noooo

viscid crane
#

what rendering changes?

steep copper
#

I mean CC is just screwed multiple ways (and will need basically a full rewrite for 1.21) but Gander uses a bunch of stuff related to partial ticks

#

I imagine the timing and GameRenderer stuff is just a start

viscid crane
#

ok but what changes

#

other than partial ticks

digital scaffold
#

It's pretty much just the partial ticks

#

They also removed some thread checking stuff in Blaze3D, but I think that's it

steep copper
#

Once Mojang starts looking at an area of code, they usually clean up the surrounding areas

#

So I won't be surprised if some more internal rendering stuff happens

sinful hazel
remote void
#

he is just really hopeful for potion rework lol

#

same way I want painting positions spawned from structure nbt files fixed

#

or per-structure piece autowaterlogging from world's water toggle

sinful hazel
#

subtle 😉

viscid rune
#

or me wanting a 3d mace with actual spikes gathered from elder guardians

rotund quail
#

data driven horns and music disks

steep copper
#

level class composition instead of overriding like 100 methods from interface trees tho

humble salmon
#

rip noisy piston machines

steep copper
#

Etho, near his doors and sorting machines: "Finally, inner peace"

humble salmon
#

thinkies I reuse the piston sound effects for a few of my mechanical blocks, gonna need to remember which blocks use those and make sure they still sound fine

digital scaffold
# humble salmon rip noisy piston machines

Oh that's nothing. https://youtu.be/zGDDKYSEz_Q

In this video we shine a spotlight into the darkness that is the souls of WaveTech members, as they exploit innocent hoppers for their own personal gain. Watch as I liberate thousands of hoppers from their wrath, and join me in my campaign for change in the wider technical community.

WaveTech discord: https://discord.gg/SR6q7sC
My own discord: ...

▶ Play video
tacit oxide
#

I'm suprised it still exists

lone tree
hard ivy
#

finally, another use for fishing

red sigil
manic oracle
#

oh god i hate that

#

we're gonna have fun bulk crafting pistons in 1.21

light arrow
#

For those who don't get it... that recipe is a joke about the new sound sounding like a fish on land

white pond
#

There is a new sound? oh

odd flare
#

something fishy that mojang did

red sigil
#

they made pistons sound like a wet rag, or a fish that has jumped out of the water and is slapping around on the floor

lone tree
#

Would a #air tag be useful?

jagged stag
#

wha

#

for what

lone tree
#

for mods

late sentinel
#

No

#

air is not an adjustable concept

#

Either a block is air at the code level or it is not

remote void
#

Blocks have that method that modded blocks can override

#

It also has consequences too in vanilla where chunk sections of only isAir true blocks will get all the blocks erased and converted to vanilla AIR block

uncut birch
remote void
#

But also consider, what use case would an air tag provide that isAir can’t cover?

#

They aren’t something you can craft either

prisma smelt
#

he said "ask me how", not "ask me why" stabolb /j

remote void
#

There’s some structure processors that uses block tags for knowing how to rot blocks

uncut birch
#

i had a datagen error and it put air in the tag, so minecraft crashed whenever it tried to generate the structure

fallow horizon
#

might end up being #allows_frost_walker_below

lone tree
#

yeah

uncut birch
#

the hilarious thing is there's no reason to use a tag since it's clearly only designed to run on structures that only contain stone brick stairs

#

since it'd replace any stairs with mossy stone brick stairs or slabs

remote void
#

They tend not to do anything about the air stuff

prisma smelt
#

or they just adjust the blockstate predicate lol

remote void
#

They can switch to having the predicate in json just check directly for air, cave air, and void air

#

No tags at all

prisma smelt
#

yeah

uncut birch
#

maybe they'll fix worldgen so cave air doesn't end up in the final world

#

void air is pretty niche for this, who puts water at the build limit and tries to walk on top of it

prisma smelt
#

I wish they would put actual info on the world loading screen

digital scaffold
#

I remember one time I replaced void air under the world with water

prisma smelt
#

Terraria's world creation screen is awesome

digital scaffold
prisma smelt
#

Minecraft could do something similar

#

yes of course

digital scaffold
#

It's not a worldgen screen, it's a loading screen

prisma smelt
#

but there's always ways to improve

prisma smelt
#

that could be changed

digital scaffold
#

They literally show how the loading is going

prisma smelt
#

especially for worlds that are being newly created

digital scaffold
#

Each step of chunk loading is color coded

prisma smelt
#

except that "how the loading is going" isn't really representative

#

how so

remote void
#

It represents the chunk status

digital scaffold
#

Each "pixel" is a chunk, and that pixel's color is the chunk status, yeah

prisma smelt
#

ok and what does it actually mean

#

because currently I imagine 99% of users just go "haha funny colors"

#

(I do, at least)

remote void
#

It means if it isn’t a normal square, someone fucked up worldgen

digital scaffold
sinful hazel
#

whenever chunk generation changes we get bug reports about this thing looking different

digital scaffold
#

Worldgen steps

sinful hazel
#

😅

prisma smelt
#

I'm not opposed to it existing, I just think that it could use some sort of explanation

#

somewhere

#

maybe that already exists and I just didn't see it

sinful hazel
#

to be fair at this point it is kind of iconic, it’s not infrequent that you see someone talking about world generation and show a picture of this screen haha

prisma smelt
#

I'm not saying change it, I'm saying explain it

digital scaffold
#

CubicChunks has a legend, but I don't see that fitting in the base game, as it's rather technical info that most people would just be confused by

#

The wiki explains it

sinful hazel
#

oh but I also agree this screen is not useful haha

remote void
digital scaffold
sinful hazel
remote void
#

Someone should abuse worldgen to make the load screen be a square map image of the world like the third pic

digital scaffold
#

Or play Bad Apple (sorry I had to say it)

prisma smelt
#

new mod idea: Minesweeper In The World Loading Screen

light arrow
#

hmm mixin to rickroll via that screen thinkies

remote void
#

Anyway Mojang has bigger things to focus on. Like next April fools update

sinful hazel
digital scaffold
#

If you blow it up, all spawn chunks get deleted

prisma smelt
remote void
#

I mean, Mojang could do a minesweeper update for April fools where you mine a block and all surrounding connected non mine blocks up to 10 radius gets a number overlay for surrounding mines. So it’ll be 3D minesweeper with high amounts of mines.

#

Mine a mine block and get a charged creeper explosion

obsidian tide
prisma smelt
#

that would actually be funny kek

obsidian tide
#

I'm unsure how you would do that with blocks you can't see thinkies

prisma smelt
#

you wouldn't

remote void
#

You would just mine very carefully

obsidian tide
remote void
#

To reveal them and see their numbers

prisma smelt
#

but let's just stop giving them ideas

jagged stag
#

that never works

hard ivy
#

don't let your memes be dreams

austere ocean
austere ocean
#

going great

austere ocean
#

gonna get a full video with sound tomorrow

digital scaffold
#

Does this actually control chunk loading?

#

Very neat either way

light arrow
odd flare
#

Hmmm it' a snapshot day!

red sigil
#

Wetpistonday

light arrow
#

<t:1716386400:R>

hard ivy
twilit slate
#

I really hope they finally do the big change

#

like comon Mojang you have teased it enought

hard ivy
#

the 'big change' being what, exactly?

#

moving to Kotlin?

odd flare
half plaza
hard ivy
#

the data-driven future ✨

viscid rune
#

the 3d mace?

#

i'm still hoping

light arrow
#

brewing recipes bolbpleading

blissful nebula
light arrow
#

they even abstracted recipes away from using container... I can literally write a few recipe types for it on the latest snapshot (the biggest problem for neo is the vanilla compat)

#

it's also the most upvoted suggestion in the java-datapack channel on the feedback discord (currently 58)

late sentinel
#

You can trivially hook up a data loader for additional brewing recipes, what you cannot trivially do is name all the vanilla recipes and make them datapack-removable

#

Placebo already ships a data loader for new brewing recipes / mixes

odd flare
#

all I want, is a renderer made in Vulkan
AND, something called haskell support
(ok last one is a joke)

light arrow
light arrow
lone tree
#

wgpu in Minecraft Java

twilit slate
#

If I had to guess they are having their sprint ceremony currently

#

Then they will decide to do a release
Post the frogs
And press the button

#

I can imagine them on a standup call each saying shit like:
"I sliced more lime" or "I fried more frys"

#

Then someone says "I made the whole engine multi threaded" and everyone is like "boo boo sit down"

#

Yeah they are for sure sitting and watching the project lead drag the Jira tickets in to the done column

hard ivy
twilit slate
#

I think they finished the standup and are having lunch now

#

Wonder what the food situation is there

blissful nebula
#

😛

twilit slate
#

Do they have a cafeteria?
do they go out as a group to the local Chinese food shop?
Do they have free coffee in the office?
etc etc etc these are the omportnat questions!!

odd flare
#

why don't you go to Sweden and see for yourself?

twilit slate
#

Because I'm at work as well and just finished my lunch break after my sprint closing meeting

odd flare
#

then stop using discord silly
and fix work stuff

twilit slate
unreal timber
#

then go to sweden and see if they have a cafeteria

lone tree
#

MC-67 is fixed

light arrow
#

wow a 2 digit bug 👀

lone tree
#

Yeap

hard ivy
modest imp
#

wow

hard ivy
#

i wonder how they fixed it

lone tree
#

It's an old bug

odd flare
#

we know
that is the more reason to ask how they fixed it

#

because it likely became a feature for many harold

lone tree
#

Does this bug fix break farms or not?

light arrow
#

it breaks portal based jockey sorters

austere ocean
#

the code is disgusting tho
lots of global state involved

lone tree
#

There may be a lot of changes in this new snapshot, I hope.

steep copper
#

I'm thinking they redid entity networking or entity data, due to all the changes

#

stream codecs for entity info? eyesshaking

remote void
#

nah

#

they changed json for yaml

austere ocean
#

data driven mob effeeeects

#

if I say it enough it'll be real btwshakes

odd flare
#

I do wonder...
what cursed stuff they have planned for later...
I do hope some massive cursed things

steep copper
#

....no, Google. Not what I wanted.

#

fucking brands, man

austere ocean
#

they sell cannons on the internet?

red sigil
#

of course

austere ocean
#

delivery must suck

red sigil
#

...it's the internet

steep copper
#

I was gonna get an image, post it here, and tell Tele to get in

#

but noooo, BRANDS

red sigil
#

holy fuck google

#

it's WORSE than that for me

#

I searched explicitly cannon -canon to skip the photo cameras

remote void
#

XML datapacks

red sigil
#

AND IT CHOSE TO SHOW ME A CATALAN WIKIPEDIA PAGE ABOUT A TV SERIES

fiery galleon
red sigil
odd flare
steep copper
red sigil
#

and a brand's website

#

LITERALLY SEARCHED AN ENGLISH WORD GIVE ME RESULTS ABOUT THE ENGLISH WORD

steep copper
red sigil
#

no I did not f*ing mean "canon"

austere ocean
#

searching cannon AS IN THE WEAPON does work thinkies

odd flare
#

the camera is searched more
so it assumes a typo most of the time

#

hence why we Dutch use kanon
harold

steep copper
#

Get in, Finn

red sigil
#

yes it works like that but you shouldn't need to do that

odd flare
#

no correction!

odd flare
red sigil
#

anyhow

#

have they posted frogs yet?

austere ocean
#

need a bot that watches their Twitter feeds to detect posts containing frogs

steep copper
#

or.. OR... just listen for manifest changes

austere ocean
#

borinf

#

the problem with the practical solution is that it can't comedically fail and begin hallucinating non-existent snapshots

odd flare
austere ocean
#

ugh

#

Elon Musk yet again getting in the way of a good time

odd flare
steep copper
#

bluesky better

light arrow
#

write only is free wtf memelon

steep copper
#

by a lot

half plaza
twilit slate
#

and nobody know what scraping is /s

light arrow
#

user access is limited to 10k tweets a day I think

#

but we are getting off topic here

odd flare
#

on topic again

light arrow
#

no frogs, no post

twilit slate
odd flare
#

don;t be sad
when you are working, they will release it harold

#

they have been doing that to me for a few weeks now harold

twilit slate
#

my body hasn't been working for months

austere ocean
#

Friday snapshot...?

digital scaffold
#

The snapshot doesn't usually release this early

#

I don't think

austere ocean
#

I can never remember when it releases

fallow horizon
#

about an hour from now, iirc

twilit slate
#

hmmm maybe if we used the domino index near the mojang offices we could see if they are in a crunch or not?

austere ocean
#

where's my manifest tab

odd flare
#

just go to their office, and ask

light arrow
austere ocean
#

"hi, I'm from the Neoforge discord and I wanted to ask when the next snapshot's releasing"

hard ivy
#

fax an image of a frog

odd flare
#

since why would domino give us data

austere ocean
#

the mental image amuses me

#

afaict the closest Domino's to Mojang's Stockholm offices is 8km away

#

there's one 1km away from their Redmond office, tho :p

#

it's closed, darn

twilit slate
#

what other food could they be ordering??

austere ocean
#

no clue

twilit slate
#

we must know more about the diet of the employees!!

fiery galleon
#

aww man now i want a dominos

steep copper
#

just ping the problem causers, ez /s/s/s/s/s

austere ocean
#

as if they aren't always watching us stare

twilit slate
#

don't tempt me!

primal spade
#

Isn't the usual time around 5 pm

#

So in 20 minutes

viscid crane
#

Oh yeah, today is snapshot day

#

What do y’all think, are we finally getting datadriven items? Or just more fixes and minimal changes

steep copper
#

I'm betting entity data going through stream codecs, or similar work

austere ocean
#

holding out hope for data-driven mob effects

odd flare
odd flare
#

also, I could just do it
I did the original finnderp after all
do note, I am obligated to include Cpw in the ping as well

viscid crane
#

Datadriven Entity models would be great

#

After 3 years

light arrow
austere ocean
#

but is it open

light arrow
#

yes

steep copper
#

soobway

odd flare
#

that one employee that takes the food from their home: 👋

fiery galleon
austere ocean
#

oop

alpine pelicanBOT
#

New version detected: 24w21a.

austere ocean
#

AYYY

#

piston sounds reverted

#

Pause menu now can include a list of links provided by server
gwuh

light arrow
#

data-driven jukeboxes

fiery galleon
obsidian tide
#

It seems we cooked a bit too hard with the new Piston sounds last week, which is why we're reverting back to the old sounds again
thinkies

odd flare
#

Shaders

hard ivy
#

IT BEGINS

austere ocean
#

custom server crash report details?!

odd flare
#

and

#

Added @n entity selector, selecting the nearest entity
This functions as @e[sort=nearest,limit=1]
Additional requirements may still be provided; for example: @n[type=pig] will select the closest Pig

digital scaffold
#

...and there it is

viscid crane
#

Pause menu now can include a list of links provided by server

#

What

austere ocean
#

WUH

steep copper
#

Oh man, @n will be NICE

austere ocean
#

JUKEBOX SONG REGISTRY

lethal pivot
#

It’s probably like to allow custom buttons by servers in the pause menu, like hypizel

hard ivy
austere ocean
#

holy hell

odd flare
#

SHADERS!

odd flare
#

SHADERS
The blend block in core shader definitions has been removed, as it was not used
The position_color_tex shader has been removed, replaced with the pre-existing position_tex_color
The glint_direct shader has been removed, replaced with the pre-existing glint shader
The armor_glint shader has been removed, as it was unused

fiery galleon
lone tree
#

air: All blocks that resemble air

viscid crane
#
Instead, attribute modifiers are now uniquely identified by a namespaced ID, similar to other resources```
#

Thank fucking god

odd flare
#

but I have heard one one being happy about the new piston sounds

balmy estuary
#

The server links features nice

odd flare
#

@red sigil they fixed it

obsidian tide
balmy estuary
#

That allows servers to define links like Discord servers and various other things directly in the game now, and not just through chat, which is fantastic!

steep copper
#

Lul, jukebox playable is a component

#

Time to shove a trident in a jukebox

balmy estuary
#

Everything is becoming data driven which is better

viscid crane
#

still no datadriven items tho…

odd flare
#

imma go make a "link-blocker mod"

viscid crane
#

Or entity models…

odd flare
#

give them time

viscid crane
#

damn

odd flare
#

rome wasn't make in a week either

viscid crane
#

They’ve had over 9 years

steep copper
#

So, I was kinda close on entity data - there WERE changes

#

Just not full streams I guess

odd flare
fiery galleon
#

Block Tags
air: All blocks that resemble air
wasnt there a pr recently to add this which got turned down?

#

and mojang just did it themsleves

steep copper
#

Time to fire that PR back up lol

alpine pelicanBOT
#

This week we're bringing a Snapshot you can vibe out to! This time around we're bringing data-driven jukeboxes, a new gamerule, and a bunch of fixes.Happy vibing!ChangesIt seems we cooked a bit too hard with the new Piston sounds last week, which is why we...

viscid crane
#

I am still salty about those datadriven entity models thing being a bust

odd flare
#

#AntiAirPr

austere ocean
#

finally, a snapshot to vibe out to

lone tree
#

Air is air

odd flare
#

late /s

fiery galleon
green pond
steep copper
#

dimension_padding is nice, but Mojang pls, plsplspls add a way to get optimal structure spawn requirements... Gander would be so nice at that point

austere ocean
#

oh, so you can make anything playable in a jukebox now :3c

odd flare
#

time to play my fav prom music in a jukebox

#

mean what

austere ocean
steep copper
#

inserts diamond

odd flare
#

inserts d... no

austere ocean
#

now we just need data-driven noteblock instruments :3

twilit slate
#

and even show has already fallen

green pond
hard ivy
#

someone bonk finn

odd flare
#

what..?
I meant disc

#

get your mind out of the gutter 😛

hard ivy
#

too late -- bonk

steep copper
#

-pickaxe- [Don't Mine At Night] starts playing

hard ivy
#

creeper? aw man

odd flare
#

can't blame me for your having a horny mind, Sci 😛

austere ocean
#

what a sentence

balmy estuary
#

Turns bedrock into air

austere ocean
#

this will require some number of changes to CC: Tweaked

red sigil
#

It seems we cooked a bit too hard with the new Piston sounds last week, which is why we're reverting back to the old sounds again
Lowered volume of original sounds to address initial feedback of Pistons being too loud
smh they couldn't come up with a new sound that was quieter but didn't sound like slapping spaghetti

steep copper
#

🍝

austere ocean
#

but they listened

steep copper
#

it's in their code too

digital scaffold
#

Looks like they removed ResourceLocation constructors (or rather made them private)

steep copper
#

oh god

digital scaffold
#

Static factories go brrrr

steep copper
#

RIP every mod ever

remote void
#

but.. why

austere ocean
#

wuh

steep copper
#

Are RLs records?

#

They should be

digital scaffold
#

Wait

digital scaffold
#

New witty comments

fiery galleon
remote void
#

show class code fo resourcelocations

light arrow
#

MeshData 👀

austere ocean
#

where's the diff

remote void
#

well, I should have access to these diffs but idk where to look lol

digital scaffold
#

They have different witty comments for different types of error reports (so there's ones for crashes, ones for network errors, etc)

austere ocean
#

?!

austere ocean
#

quick, update the wiki!

digital scaffold
austere ocean
#

private wah

obsidian tide
#

yeah, because minecraft source code

austere ocean
#

fair enough

digital scaffold
#

Profiler witty comments

remote void
#

you would call ResourceLocation.fromNamespaceAndPath(<string1>,<string2>) now.

steep copper
#

ew

austere ocean
#

RIP every mod ever

remote void
#

there's a few other static methods. The goal was to remove the ambiguous constructors and make you explicitly state how to parse the strings

steep copper
#

Imagine ResourceLocation.namespaced

obsidian tide
steep copper
#

1.17 MILLION deletions?!

#

damn

digital scaffold
#

For me:

austere ocean
#

how can I generate a diff myself?

#

sure, but what kind of sacrifice do I need

digital scaffold
#

You just decompile the game on the previous snapshot, create a Git repo in the directory and commit the code, then decompile the new version and commit that, then push the repo to a private GitHub repository, and check the diff

#

Or don't push it and read the diff in IntelliJ

steep copper
#

You don't even need to push

digital scaffold
#

Yeah same

austere ocean
#

easy as that clueless
shame I'm not at my desktop right now

remote void
#

mojang heard we all like breaking changes so much that they now make ResourceLocation constructors no longer public. So you to use these static methods:
ResourceLocation.fromNamespaceAndPath(<namespace>, <path>)
ResourceLocation.parse(<stringWithColon>)
ResourceLocation.parse(<string>, <separator>)
ResourceLocation.withDefaultNamespace(<path>)
ResourceLocation.tryParse(<stringWithColon>)
ResourceLocation.tryBuild(<namespace>, <path>)

fallow horizon
#

calling it now that some mods will just AT the constructors

obsidian tide
#

I mean, that is clearer, gotta give them that

fiery galleon
#

so many changed files this week, github cant load them all

digital scaffold
#

fromNamespaceAndPath waaaaaa

hard ivy
remote void
digital scaffold
#

It's so long

fallow horizon
#

oh god the vertex rendering APIs have taken damage

digital scaffold
#

Well mine only says 7200, so I think yours is wrong

hard ivy
#

perhaps you're including resources?

digital scaffold
#

Sometimes some files fail to decompile

hard ivy
#

my one guess

digital scaffold
agile canyon
#

The buffer changes...

#

AHHHH

hard ivy
#

hmmm

green pond
#

thank you @hard ivy

obsidian tide
digital scaffold
agile canyon
#

But probably the rest too

obsidian tide
green pond
#

Mojang why

fallow horizon
#

at first glance they seem to have implemented optimizations somewhat along the lines of what sodium is doing to the bufferbuilder

obsidian tide
green pond
#

Why must you make us suffer like this

fallow horizon
#

vertexconsumer calls now do a direct memory write into native memory

#

at least some of them

austere ocean
agile canyon
#

Also, I'd like to complain about why they just renamed all the VertexConsumer methods with add* or set*

green pond
#

I think I might have to update AutoAFKFish, and I never have to update that...

agile canyon
#

Also, I can see you ResourceLocation#withDefaultNamespace

fallow horizon
#

addVertex pushes a new vertex, setThing changes the property "thing" of that particular vertex

light arrow
#

gander -> 🗑️

weary moon
#

Block Tags
air: All blocks that resemble air
thonk

austere ocean
#

nothing better than massive internal changes

fallow horizon
#

so yeah any code that used a vertexconsumer probably requires some refactoring at the very least

agile canyon
#

Will need xfact and embeddedt's help for making sure I understand all the rendering changes for the primer

#

Currently skipping for now since it's a hassle

hard ivy
#

someone did, yes

weary moon
#

Lolo did iirc

hard ivy
#

Mojang smiled kindly upon them kek

lone tree
#

Yeap

austere ocean
remote void
digital scaffold
#

Wait, stats are in the achievement package. How have I never noticed this?

viscid crane
#

Wait what

#

Rendering changes?

digital scaffold
#

Quite a few of them

#

What happened here I wonder

agile canyon
#

Hmm, looks like attribute modifiers are now a ResourceLocation rather than a uuid plus name

weary moon
digital scaffold
#

It's in the changelog

#

Maybe the compiler didn't emit a pop for some reason?

#

Which would be weird, since javac implements expression lambdas at the AST level, as part of desugaring

fiery galleon
#

ahhh thanks git, i totally didnt want to read this diff

austere ocean
#

eated it

twilit slate
digital scaffold
#

I can't show the class, I haven't gotten there yet

agile canyon
#

Ok, the vertex changes seem to be a lot simpler than I thought they would be

#

Shaders on the other hand can go burn in a hole for a bit

timber saddle
#

what changed w/ shaders?

agile canyon
#

Bunch of things I haven't looked into yet since I'm putting it off until the end of the primer

timber saddle
#

oh lord

remote void
#

it's just a small present for you!

#

inb4 mojang deletes the mth class

fallow horizon
#

they moved the chunk meshing loop into another class, whoever does kits will have to have fun moving that patch around

#

RenderChunkRegion no longer uses multidimensional arrays to store the cloned chunks

light arrow
#

@white pond @half plaza

fallow horizon
#

it might be worth starting on kits at this point tbh

viscid crane
#

kits?

light arrow
#

well we need to wait for neoform

digital scaffold
lone tree
light arrow
viscid crane
#

Ah

#

~~The illegal one ~~

light arrow
#

it would be illegal if it were public

gusty flower
steep copper
gusty flower
#

WITHOUT ME???

fiery galleon
#

ooh she got a knife *silently backs away*

steep copper
#

I'd send a friend request to DM, but you aren't accepting them stab

gusty flower
#

O

fallow horizon
#

how many of you work on gander now lol

hard ivy
#

looks to be three

agile canyon
hard ivy
#

when are you joining their cadre, embedded

remote void
#

but anyone using the one string constructor now can't just AT their way through

weary moon
remote void
#

they have to split up their string and AT to use thw two string constructor or switch to the static methods

digital scaffold
#

They really should just switch to the static methods though

red sigil
#

why AT when you can search&replace

remote void
#

good luck convincing modders to do so lol

digital scaffold
#

🤨

red sigil
#

new ResourceLocation -> ResourceLocation.parse or whatever the other one is

digital scaffold
#

We aren't that lazy. At least most of us aren't

red sigil
#

not lazy, the main issue is people trying REALLY HARD to make their mod cross-version

digital scaffold
#

Oh

#

Fair

fallow horizon
remote void
#

and people being lazy

hard ivy
#

I call mine loc

remote void
#

I'll switch

red sigil
#

mine is location

hard ivy
#

so SnowyWeaponry.loc("thingy")

digital scaffold
#

For sure

#

Mojang even does it now

hard ivy
#

i like comparing names

digital scaffold
#

ResourceLocation.withDefaultNamespace

red sigil
#
    public static ResourceLocation location(String path)
    {
        return new ResourceLocation(MODID, path);
    }
digital scaffold
#

A bit bulky imo, but to each their own

#

(referring to Mojang's, not yours)

remote void
#

shorter isnt always better

#

especially with ide autocomplete

digital scaffold
#

Well they could've called it ResourceLocation.minecraft

fallow horizon
#

it turns out regex-matching escaped quotes is a pain

#

nevermind

austere ocean
#

I have an extension method on ResourceLocation for this sunglassesmoment

digital scaffold
remote void
fallow horizon
#

that makes this trivial

#

sec

hard ivy
red sigil
#

that would autocomplete on your IDE

fallow horizon
#

in intellij, find new ResourceLocation\((".*")\) and replace with ResourceLocation.parse($1)

#

ez

hard ivy
#

hmmm, the fix version is Future Update rather than iirc Future Hotfix thonk

red sigil
#

no need

#

no wait, need

#

you only want to replace one-param versions

hard ivy
#

need no wait?

fallow horizon
#

ah, this captures two-param as well, whoops

red sigil
#

\"(?:[^\\\"]|\\.)*\"

obsidian tide
red sigil
#

this is my usual regex for basic string parsing

hard ivy
#

isn't there some sort of structural find and replace

digital scaffold
red sigil
fallow horizon
#

neat

weary moon
red sigil
#

in practice, though

#

it's more likely you do new ResourceLocation(variable) or even an expression

#

so parsing only a string would have only very limited usefulness :P

fallow horizon
#

good point

digital scaffold
#

I feel bad for whoever had to write these out

odd flare
austere ocean
#

why is baby in there twice

digital scaffold
#

Because they apparently had had two modifiers for that

austere ocean
#

the capitalization of the hex digits is inconsistent concern

light arrow
#

still waiting for neoform... where is the neoform team

fiery galleon
#

if i knew how to run it i would, i think i have access

red sigil
digital scaffold
#

Yeah, there's hundreds of tools to generate UUIDs

austere ocean
#

what, you're telling me the Mojang devs can't mentally generate random UUID4s?

odd flare
#

if you do, you should get help /s

austere ocean
#

yeah, when I was a baby I was bitten by a radioactive PRNG

odd flare
#

👀

austere ocean
#

it's happening agaiiiiiin

odd flare
#

this one I guess

austere ocean
#

watch it be another one-line change

alpine pelicanBOT
#

New version detected: 24w21b.

odd flare
#

because Maty /s

austere ocean
#

smh respecting the ratelimits

alpine pelicanBOT
#

We are now releasing snapshot 24w21b to fix a frequent crash which happened when Zombies spawned in areas of high local difficulty.Fixed bugs in 24w21bMC-272321 Crash after upgrading snapshot world to 24w21a...

mighty prawnBOT
#

#1812

rate limits aren't limits, more like... suggestions
- Ginger (ping please!) (Ginger)

austere ocean
#

what

gusty flower
#

what the hell did they do to the screen blit shader

austere ocean
fallow horizon
odd flare
#

wait you didn't

#

thinkies q

mighty prawnBOT
#

[Reference to](#1233004919322054678 message) #1233004919322054678 [➤ ](#1233004919322054678 message)Added quote #1812.

odd flare
#

I hate discord search

austere ocean
#

:3c

fallow horizon
#

yeah i quoted that

austere ocean
#

the trick is to search for the quote number :p

gusty flower
odd flare
#

well ignore what I said then XD

digital scaffold
#

Because their DV increases

hard ivy
austere ocean
odd flare
hard ivy
lone tree
#

Nice hotfix

gusty flower
#

I guess it KINDA makes sense, but still, it's REALLY weird

balmy estuary
#

2 snaps on one day?! Damn

odd flare
#

its almost 19:00 for them

fallow horizon
#

I haven't read the shader yet, only the Java side change

#

reading the shader now

austere ocean
#

24w21c: "oops sorry we forgot to mention that we made items data-driven"

hard ivy
#

looks like dpeter is updating the original pinned message

#

i've poked Snowman to regen

odd flare
fallow horizon
#

I don't really speak shader very well

#

😛

twilit slate
#

Yes also dpeter99 is in a lot of pain so excuse me for not finishing the update fast enough

odd flare
#

then go sleep or see doctor

twilit slate
#

On the agenda already

gusty flower
digital scaffold
#

I'm still reading the a diff 🙃

austere ocean
#

three copies of the snapshot name lol

hard ivy
#

something about the branding I think

gusty flower
austere ocean
#

it's marked as deprecated for... some reason

#

Mojang works in mysterious ways

twilit slate
#

Updated the pinned post

odd flare
#

who reads the pins anyway thinkies

digital scaffold
#

Isn't it a public static final constant in there?

gusty flower
#

interesting how they added a window platform helper method

twilit slate
austere ocean
#

so when they release a snapshot they need to bump:

  • the hardcoded name string in DetectedVersion
  • the WORLD_VERSION constant
  • the deprecated VERSION_STRING constant
  • SNAPSHOT_NETWORK_PROTOCOL_VERSION
  • the return value of getProtocolVersion(), which I guess is entirely different from that other constant
  • the hardcoded name string in ReportEnvironment
#

better not forget one!

fiery galleon
#

they prob use shared constants everywhere and decomp is removing that ref

hard ivy
#

I assume automation plays a role there

fallow horizon
#

for chunk rendering they issue a uniform upload for every subchunk

gusty flower
#

i'm talking about the screen blit shader, they changed it for seemingly no reason

fallow horizon
#

ah

digital scaffold
#

Remember javac inlines constants

gusty flower
#

they only blit to screen twice using that shader, ever

digital scaffold
#

It inlines static final constants, yes

gusty flower
#

one is the main blit to screen, the other is the entity outlines

digital scaffold
#

It also inlines final constants that are locals

austere ocean
#

good, they're not that crazy

#

I was ready to accept that that was just how it was, though harold

digital scaffold
#

I wouldn't be suprised if some of the others get filled in by some Gradle plugin

gusty flower
#

wait, MeshData.indexBuffer()????

#

They're starting to used indexed rendering holy smokes

#

this should mean entity rendering is a LOT faster

#

wait no I misremembered

#

I was thinking of instanced rendering DokiDerp

#

yeah I just saw in and have a huge headache because of work so my brain autocompleted to instanced

jagged stag
#

it's a chance when it happens

light arrow
#

<@&1242898841586372638> we want to start kits from todays b snapshot please fix neoform

jagged stag
#

whose idea was that role

light arrow
#

mine and sci did it

half plaza
#

Accidentally ran the check workflow for 24w21a instead of 24w21b

mighty prawnBOT
#

[Jump to referenced message](#builds message) in #builds

Version

24w21b-20240522.183735

Build Branch

1.21-dev

Minecraft Version

24w21b

white pond
#

Oh just came back. Anything interesting?

viscid crane
#

chunk stitching got extracted to itss own class, apperantly

agile canyon
light arrow
#

88 reject files

primal spade
#

ah we should wait for the event refactor

light arrow
primal spade
white pond
#

MeshData, interesting

steep copper
#

Waiting for Mojang to outgrow their int/enum-based GameEvent system...

fallow horizon
white pond
#

depends on how much it is

#

@light arrow are you working on it, or can I pick it up?

#

I really shouldn't but I could do some mindless work right now 😛

fiery galleon
#

i wouldnt mind helping out (porting is one of the reasons i applied for maintainer afterall)
if someone wouldnt mind sitting in vc with me
talk me through the porting process and stuff so that im not doing stuff wrong

primal spade
light arrow
white pond
#

yeah yeah i know

#

yeah gonna stop right at the start and do the gradle plugin instead 😄

#

BufferBuilder seems interesting

#

they seem to be building right into off-heap memory now

fallow horizon
#

yes

#

and I think they got rid of a bunch of indirection in the old implementation that slowed it down

primal spade
#

VertexBufferWriter 🦀 ?

white pond
#

IDK I just looked at the BufferBuilder

#

It has a ByteBufferBuilder backing it up

fallow horizon
#

but the custom VC currently put in front of BufferBuilder to do direct writes into off-heap memory is now redundant

viscid crane
#

I just wish they would stop with the weird naming of shit

#

just call it materials

#

Not render layer, state shards, shader shards...

prisma smelt
#

I might just have a look at that CommonHooks/EventHooks cleanup mmLol

primal spade
#

you should have a look at the event refactor first if you have free time 😛

prisma smelt
#

that's the neat part, I don't

#

at least not until this weekend

#

but yeah, I might just do that

unreal timber
#

#DamagePipelinePRMergeWhen harold

balmy estuary
#

Or atleast use Interfaces?

#

IShape harold

digital scaffold
agile canyon
#

Don’t know, I thought I removed it

#

I’ll deal with it when I’m back in front of a computer

#

And fixed

lone tree
hallow mantle
#

The description tells you

red sigil
#

it's just cumulative error

#

the game has two kinds of position updates, absolute and relative

hallow mantle
#

The same thing that happens on planes all the time

red sigil
#

the relative updates assume that the client's copy of the value is correct

#

but when you don't sync the absolute value at the right times, it can drift away

#

in this case

#

when an entity is out of tracking distance (invisible to the client), the game isn't sending updates

#

so the values drift more and more

light arrow
twilit slate
weary moon