🧱Bedrock Academy

Custom Block (Ore, Machine, Decor)

hardness, light emission, material ও geometry সহ নিজের ব্লক — আর কীভাবে গেমে বসানো যায়।

⏱ ~20 মিনিট

Custom block বানানো আইটেমের মতোই — শুধু আলাদা কিছু component আছে যা ব্লকের জগতে অর্থপূর্ণ: কত শক্ত, ভাঙতে কী লাগবে, আলো দেবে কি না, ইত্যাদি।

একটা Custom Ore Block

behavior_pack/blocks/ruby_ore.json
1{
2 "format_version": "1.21.0",
3 "minecraft:block": {
4 "description": {
5 "identifier": "myaddon:ruby_ore",
6 "menu_category": { "category": "nature" }
7 },
8 "components": {
9 "minecraft:destructible_by_mining": { "seconds_to_destroy": 3.0 },
10 "minecraft:destructible_by_explosion": { "explosion_resistance": 3 },
11 "minecraft:light_emission": 5,
12 "minecraft:map_color": "#FF3355",
13 "minecraft:geometry": "minecraft:geometry.full_block",
14 "minecraft:material_instances": {
15 "*": {
16 "texture": "ruby_ore",
17 "render_method": "opaque"
18 }
19 }
20 }
21 }
22}
  • L9seconds_to_destroy: হাত দিয়ে ভাঙতে কত সেকেন্ড। শক্ত ব্লক হলে বাড়াও।
  • L11light_emission: 0–15। 5 দিলে হালকা আলো ছড়াবে (glowstone = 15)।
  • L12map_color: ম্যাপে এই ব্লক কোন রঙে দেখাবে।
  • L13geometry: full_block = সাধারণ পূর্ণ কিউব। custom মডেল হলে এখানে geometry.<নাম> দেবে।
  • L15"*" মানে ব্লকের সব দিকে একই টেক্সচার। আলাদা দিকে আলাদা টেক্সচারও দেওয়া যায়।
  • L16texture: এই নামটা terrain_texture.json-এ ম্যাপ করা থাকতে হবে।

Block texture রেজিস্টার করা (terrain_texture.json)

আইটেমে যেমন item_texture.json লাগে, ব্লকে তেমন `terrain_texture.json` লাগে। RP-র textures/ ফোল্ডারে রাখো।

resource_pack/textures/terrain_texture.json
1{
2 "resource_pack_name": "my_rp",
3 "texture_name": "atlas.terrain",
4 "texture_data": {
5 "ruby_ore": {
6 "textures": "textures/blocks/ruby_ore"
7 }
8 }
9}
  • L5এই "ruby_ore" key টা block ফাইলের material_instances-এর texture নামের সাথে মিলতে হবে।

গেমে ব্লক পাওয়া

text
1/give @s myaddon:ruby_ore