Skip to content

Feat: added support for custom blocks on Bedrock.#1177

Draft
oryxel1 wants to merge 23 commits into
ViaVersion:ver/26.1from
oryxel1:bedrock-custom-block
Draft

Feat: added support for custom blocks on Bedrock.#1177
oryxel1 wants to merge 23 commits into
ViaVersion:ver/26.1from
oryxel1:bedrock-custom-block

Conversation

@oryxel1

@oryxel1 oryxel1 commented May 24, 2026

Copy link
Copy Markdown
Contributor

This PR adds support for custom blocks on Bedrock, nothing more!
image
image
image

Current TODO:

  • Working implementation yipeeee
  • Unload the block and block states on leaves.
  • Translate block components
  • Translate block states (permutations)
  • Better baked model (not that important for now)
  • Split block into block states.

@oryxel1 oryxel1 marked this pull request as ready for review May 26, 2026 19:03
@oryxel1 oryxel1 requested a review from a team May 26, 2026 19:03
@oryxel1

oryxel1 commented May 26, 2026

Copy link
Copy Markdown
Contributor Author

This PR is ready for review.

@oryxel1

oryxel1 commented May 29, 2026

Copy link
Copy Markdown
Contributor Author

currently every block states is a different block, we should split this into states instead of doing that, if anyone wanna take a crack at it then feel free, marking this as draft.

@oryxel1 oryxel1 marked this pull request as draft May 29, 2026 17:40
@SC-MC-Mod-Dev

Copy link
Copy Markdown

dude this is awesome!!!!

@oryxel1

oryxel1 commented May 30, 2026

Copy link
Copy Markdown
Contributor Author

ikr

@florianreuth

Copy link
Copy Markdown
Member

The PR looks overall good, but we have to clarify the maintenance aspect here. How active are you going to maintain this feature? It's introducing a bunch of code changes to the game which I'm not sure of capable updating on game updates (and making sure it continues to work). Maybe we will need to find a way to isolate bedrock only features before merging.

@oryxel1

oryxel1 commented May 31, 2026

Copy link
Copy Markdown
Contributor Author

The PR looks overall good, but we have to clarify the maintenance aspect here. How active are you going to maintain this feature? It's introducing a bunch of code changes to the game which I'm not sure of capable updating on game updates (and making sure it continues to work). Maybe we will need to find a way to isolate bedrock only features before merging.

I am more than willing to actively maintain it :P, however isolating it also is a good idea I think.

@florianreuth

Copy link
Copy Markdown
Member

Sounds good, though then it would make sense to get you into the discord chat again (so we can do some more rapid chatting). I don't have the capacity to go more closely over this at the moment, so this will be something for after 26.2.

@oryxel1

oryxel1 commented Jun 15, 2026

Copy link
Copy Markdown
Contributor Author

sound good to me.

final JsonObject jsonObject = element.getAsJsonObject();
final JsonElement textures = jsonObject.get("textures");
if (textures instanceof JsonPrimitive primitive) {
final Map<Direction, String> map = new HashMap<>();

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

EnumMap could be better?

}
ID_TO_TEXTURE_MAP.put(key, map);
} else if (textures instanceof JsonObject texturesObject) {
final Map<Direction, String> map = new HashMap<>();

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Same here

return null;
}

final Map<Direction, String> map = new HashMap<>();

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Same here

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.

4 participants