Skip to content

Polish smeltery#863

Open
Seggan wants to merge 13 commits intomasterfrom
chore/smeltery
Open

Polish smeltery#863
Seggan wants to merge 13 commits intomasterfrom
chore/smeltery

Conversation

@Seggan
Copy link
Member

@Seggan Seggan commented Mar 8, 2026

  • Updated smeltery recipes
  • Removed Smeltery Caster and made it a separate block called the Casting Unit that requires the fluid piped in
  • Smeltery Input and Output Hatches now require the correct temperature
  • Added casts, for casting liquid metals to nuggets, ingots, blocks, sheets, and pipes (pipes use the crafting ratio, so pipe bender is still more efficient)

Copy link
Member

@Intybyte Intybyte left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed, works ingame, also are we sure we should drop the documenation of said recipes? I mean they are easy to understand even without it

import org.bukkit.inventory.ItemStack;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jspecify.annotations.NonNull;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we use jetbrains annotations

Comment on lines +33 to +35
maven("https://repo.codemc.io/repository/maven-releases/") {
name = "CodeMC"
}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why was this added?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Entitylib was made from implementation to api in another PR, forgot to change it back


for (Entity entity : getBlock().getWorld().getNearbyEntities(box)) {
if (!(entity instanceof LivingEntity livingEntity)) continue;
livingEntity.damage(damage, DamageSource.builder(DamageType.LAVA).build());
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just save the DamageSource in a static attribute

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

is it really necessary? this seems fine

@AlmostPanda
Copy link

Just want to ask, if controller/burner (also diesel burner) switches to lit=true state when active, because currently (stable version, not PR) it does not

@Seggan
Copy link
Member Author

Seggan commented Mar 16, 2026

Reviewed, works ingame, also are we sure we should drop the documenation of said recipes? I mean they are easy to understand even without it

The docs were wrong even at that point

@Seggan
Copy link
Member Author

Seggan commented Mar 16, 2026

Just want to ask, if controller/burner (also diesel burner) switches to lit=true state when active, because currently (stable version, not PR) it does not

Oh yeah I can fix that

@Intybyte Intybyte linked an issue Mar 17, 2026 that may be closed by this pull request
Copy link
Contributor

@LordIdra LordIdra left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The molding recipes won't work because a clay ball cannot be used with the manual brick mold. May I suggest that instead of the molding recipes, we just do it how tinker's and similar mods do it, and require you to pour liquid gold or similar over a block, ingot, pipe, etc?

Apologies this took me so long to get to

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would it perhaps be better behaviour here to make this a PylonFluidTank and just accept any (castable) fluid? I was very confused at first when nothing happened after I piped liquid copper into the casting unit, and it feels unintuitive from a UX perspective as it's inconsistent with what every other fluid block does

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I initially had it like that but the problem is I'd need a dynamic tank size

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

you can do that with PylonFluidTank - the capacity can be set after creation. But I think also you could just set a static size of like 2,000 or something like that. or you could do something like the fluid hatch which would be cool, where you have to build a fluid tank casing on top which holds the fluid

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah but if I set it to static

  1. idk what's the biggest cast that's ever gonna be used
  2. It can take more fluid than I wanted, so now I have a whole caster of fluid I don't wanna cast

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

true. tbf someone could just add an 'advanced caster' or something if they need to do that, it's a fairly niche thing, and the fluid hatch approach would allow a lot of fluid to be stored since the later tanks have a lot of capacity. for the second thing - it does encourage the use of the accumulator or a redstone setup which is nice but idk if that's overcomplicating it. I'm conflicted, it would be really nice to be able to see fluid available but I see why maybe this is better, I'm fine with it as-is then I think. though I'd suggest maybe the barrier should change to something else in the GUI since it's always going to be a barrier, which to me indicates something is wrong


for (Entity entity : getBlock().getWorld().getNearbyEntities(box)) {
if (!(entity instanceof LivingEntity livingEntity)) continue;
livingEntity.damage(damage, DamageSource.builder(DamageType.LAVA).build());
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

is it really necessary? this seems fine

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think bronze smelting should probably be prioritised over these in the guide

@Seggan
Copy link
Member Author

Seggan commented Mar 18, 2026

The molding recipes won't work because a clay ball cannot be used with the manual brick mold.

That's intentional, you need a diesel one for it

@LordIdra
Copy link
Contributor

The molding recipes won't work because a clay ball cannot be used with the manual brick mold.

That's intentional, you need a diesel one for it

gotcha - still, current recipes feel rather strange to me

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Smeltery Damage

4 participants