Bedrock Edition beta 1.18.10.20

**Beta 1.18.10.20** เป็นรุ่นทดลองเวอร์ชันแรกของรุ่นเบดร็อก 1.18.10 ปล่อยเมื่อวันที่ 18 พฤศจิกายน 2021 ในเวอร์ชันนี้ได้มีการเปลี่ยนแปลงเกี่ยวกับเท็กเจอร์ แก้ไขข้อผิดพลาด และมีการอัปเดตเกี่ยวกับทางเทคนิคจำนวนมาก

## การเปลี่ยนแปลง

### บล็อก

**ใบหยาดใหญ่ (Big Dripleaf)**

* ตอนนี้สามารถวางได้แค่บนดินเหนียว (Clay), บล็อกหญ้า (Grass), ดิน (Dirt), พื้นที่เกษตรกรรม (Farmland), มอสส์ (Moss), ดินฝังราก (Rooted Dirt), ดินพอดซอล (Podzol), และกลุ่มใยรา (Mycelium) เท่านั้น

### การสร้างโลก

**หินชนวนลึก (Deepslate)**

* ตอนนี้การเปลี่ยนชั้นหินจะค่อย ๆ เริ่มขึ้นระหว่าง Y= 0 ถึง Y= 8 จากเดิมที่เกิดขึ้นใน Y= -8 ถึง Y= 0

### ทั่วไป

**Splash**

* ข้อความ "[this splash text has been delayed until part 2]" ถูกเปลี่ยนเป็น "[this splash text is now available]"
* เพิ่มข้อความ "Don't feed chocolate to parrots!"

## การแก้ไข

**เกมเพลย์**

* MCPE-55206 - แก้ไขคลูดาวน์ของอาหารที่ไม่โปร่งใสใน HUD
* ซากประตูมิติ (Ruined Portal) ใต้มหาสมุทร (Ocean) และที่ลุ่มน้ำขัง (Swamp) จะไม่มีน้ำขังอีกต่อไปและมันจะแห้ง
* MCPE-49044 - TNT ที่ถูกจุด (Primed TNT) จะไม่ระเบิดเมื่อเสกมันขึ้นมาด้วย /summon และกฎเกมตั้งให้การระเบิดของ TNT เป็นเท็จ (TNT Explodes game rule is disabled)
* จำกัดวงบล็อกที่จะถูกแช่แข็งด้วยมนตร์นักเดินเยือกแข็ง (Frost Walker) เป็น 8 บล็อก เพื่อหลีกเลี่ยงที่เซิร์ฟเวอร์ไม่ตอบสนอง
* MCPE-123412 - ชาวบ้านที่เป็นชาวนาจะไม่เก็บไอเทมเกิน 8 กอง (Stack)
* ออฟเซตแผนที่ (Offset Map) ในมือ จะมีขนาดสัมพันธ์กับอัตราส่วนของหน้าจอ ดังนั้นมันจะมองเห็นอยู่ที่ขอบของจอและเห็นมันได้ทั้งหมดเสมอ
* MCPE-142285 - แก้ไขที่เครื่องกำเนิด (Spawner) ที่บางครั้งหยุดสร้างสิ่งมีชีวิตเมื่อโหลดชังก์ที่มันอยู่ใหม่
* MCPE-146036 - ความสำเร็จ 'Iron Belly' สามารถทำให้ปลดล็อกได้อีกครั้ง
* MCPE-137617 - แก้ไขบล็อกโครงสร้าง (Structure Block) ทำให้เกิดเอนทิตีชนิดเดียวกันอย่างไม่มีที่สิ้นสุด ระหว่างที่กำลังโหลดสิ่งก่อสร้าง
* ผู้เล่นจะไม่ได้รับบาดเจ็บจากชุดเกราะร่ายมนตร์ (Enchantment) เช่น หนาม (Thorn) อีกต่อไป
* อาหารจะให้เอฟเฟกต์อีกครั้งเมื่อกิน

**บล็อก**

* บล็อกน้ำใกล้ขอบควรไหลได้อย่างถูกต้อง
* ไฟ (Fire) ไม่สามารถสร้าง/วางบนสายล่อฟ้า (Lightning Rod) อีกต่อไป
* MCPE-141156 - กำแพง (Wall) จะมีความกว้างที่ถูกต้องเมื่อเชื่อมต่อกับเทียน (Candle)
* MCPE-142010 - ปรับปรุงแอนิเมชันของบล็อกเอนทิตีที่กำลังร่วง (เช่น ทราย (Sand), กรวด (Gravel))
* ใบหยาดใหญ่ (Big Dripleaf), ตาแอเมทิสต์ (Amethyst Bud), และกระจุกแอเมทิสต์ (Amethyst Cluster) จะไม่ถูกทำลายในบล็อกโครงสร้าง (Structure Block)
* MCPE-126076 - ตอนนี้กระจุกแอเมทิสต์ (Amethyst Cluster) จะถูกทำลายอย่างถูกต้องเมื่อบล็อกที่รองรับหายไป
* MCPE-134954 - บล็อกทองแดง (Copper Block) และชนิดที่คล้ายกันจะออกซิไดซ์ในเนเทอร์
* MCPE-123392 - ใบหยาดใหญ่ (Big Dripleaf) สามารถวางได้แค่บนดินเหนียว (Clay), บล็อกหญ้า (Grass), ดิน (Dirt), พื้นที่เกษตรกรรม (Farmland), มอสส์ (Moss), ดินฝังราก (Rooted Dirt), ดินพอดซอล (Podzol), และกลุ่มใยรา (Mycelium)
* หินหยดแหลมสามารถวางบนบล็อกที่มีหน้าเต็ม (Full Faces of Blocks) เท่านั้น
* ไลเคนเรืองแสง (Glow Lichen) ตอนนี้จะวางทิศทางได้ถูกต้องเมื่อวาง
* MCPE-99718 - บล็อกหินหนืด (Magma Block) จะไม่สร้างดาเมจอีกต่อไปหากกฎเกมความเสียหายจากไฟเป็นเท็จ (FireDamage gamerule)
* MCPE-147624 - ตอนนี้ผู้เล่นสามารถแสดงท่าทาง (Emote) ขณะอยู่ในนั่งร้าน (Scaffolding)
* ผู้เล่นจะไม่พบปัญหาในการเคลื่อนที่หลังเกิดใหม่หรือลุกจากเตียงอีกต่อไป

**สิ่งมีชีวิต**

* MCPE-119561 - ชาวบ้าน (Villager), กระต่าย (Rabbits), และหมาจิ้งจอก (Fox) ที่เกิดในยอดเขาน้ำแข็งและยอดเขาขรุขระ (Frozen/Jagged Peak) จะเป็นชนิดที่เกิดในชีวนิเวศหิมะ
* MCPE-146886 - ตอนนี้แพะ (Goat) จะเกิดในยอดเขาน้ำแข็งและยอดเขาขรุขระ (Frozen/Jagged Peak)

**กราฟฟิก**

* MCPE-117339 - แก้ไขปัญหากล้องเมื่อคลิกนอนขณะกำลังร่อนลงด้วยปีกแข็ง (Elytra)
* MCPE-145828 - แก้ไขแสงบั๊กเมื่อลบแหล่งกำเนิดแสงหลังจากกลับสู่โลกปกติ (Overworld) หลังจากไปที่มิติอื่น ๆ มา
* MCPE-127539 - อัปเดตเท็กเจอร์ของบล็อกและไอเทมหลายอย่างที่มีข้อผิดพลาด และให้เกิดความเท่าเทียมกันของรุ่นจาวาและเบดร็อก

**ร้านค้า (Marketplace)**

* แก้ไขที่การซื้อเหรียญเสร็จแล้วเหรียญยังคงแสดงจำนวนเดิมจนกว่าจะเปิดเกมใหม่อีกครั้ง

**หน้าจอผู้ใช้งาน**

* แก้ไขปุ่มความสำเร็จ (Achievement) ไม่สามารถเข้าถึงได้หากเลื่อนขึ้นในหน้าจอพักเกมชั่วคราว
* "Invite to game" และปุ่ม Crown ในหน้าจอพักเกมชั่วคราวตอนนี้มีขอบสีขาวเมื่อโฟกัสด้วยความละเอียดที่กำหนดเอง
* แก้ไขความสูงของ Scrolling Content Panel ในแถบด้านข้างของหน้าร้านค้า (Marketplace) เพื่อแสดงแถบเลื่อนในอุปกรณ์ต่าง ๆ ที่มีความละเอียดต่างกัน
* MCPE-105464 - แก้ไขการซ้ำกันของ " - " ข้างชื่อของผู้เล่น ซึ่งจะเห็นอยู่ด้านหลังชื่อของเพื่อน

**การสร้างโลก**

* แก้ไขชีวนิเวศภูเขายอดราบ (Mesa) และมหาสมุทรแช่แข็ง (Frozen Ocean) ที่มีการสร้างที่ไม่คงที่ในเรียม (Realms)
* MCPE-147373 - ชั้นหินดานเก่า (Bedrock) ระหว่าง Y= 0 ถึง Y= 4 ในชังก์เก่าตอนนี้จะวางหินชนวนลึก (Deepslate) ทับไปเมื่ออัปเกรดโลกจากเวอร์ชันเก่า
* MCPE-144800 - สินแร่ทองแดง (Copper Ore) สามารถสร้างชนิดแบบหินชนวนลึก (Deepslate) ได้ในถ้ำหินหยดแหลม (Dripstone Cave)

**ความเท่าเทียมของวานิลลา**

* MCPE-145751 - ปรับให้แผ่นเสียง "otherside" จะให้สัญญาณเรดสโตน 14 เพื่อให้ตรงกับรุ่นจาวา
* MCPE-74030 - ปรับให้แผ่นเสียง "Pigstep" จะให้สัญญาณเรดสโตน 13 เพื่อให้ตรงกับรุ่นจาวา
* MCPE-138993 - แอนิเมชันการสั่นของธนูจะปรากฎขึ้นเมื่อดึงธนูสุดแล้วเท่านั้น

**คำสั่ง**

* MCPE-62903 - `/effect` ไม่มีอาร์กิวเมนต์ 'ว่าง' ที่ซ้ำซ้อนอีกต่อไป

**ประสิทธิภาพและความเสถียร**

* BDS-12751 - เพิ่มข้อความบันทึกเพื่อช่วยในการระบุสาเหตุการขัดข้องของ BDS

## ทางเทคนิค

**Block Component**

* MCPE-141908 - แก้ไข `BlockPartVisibilityComponent` สำหรับผู้เล่นหลายคน โดยการเพิ่มแท็กการบันทึก/โหลดเครือข่าย

**GameTest Framework**

มีการเปลี่ยนแปลงที่สำคัญบางอย่างใน API ที่เหล่าผู้สร้างส่วนเสริมควรทราบ:

* เปลี่ยนชื่อ `mojang-minecraft:Worldobject` เป็น `mojang-minecraft:world` (โลกยังคงอยู่ แต่มันจะเป็นประเภท (type) จะเป็นอินสแตนซ์ของโลก)
	+ ในทางปฏิบัตินั่นหมายความว่าโค้ด `World.getDimension` ตอนนี้ควรอ่านเป็น `world.getDimension`
* ลบ `mojang-minecraft:Commands` แต่เราเพิ่มเมธอด `runCommand` ในมิติ (Dimension), เอนทิตี, และผู้เล่น
	+ ในทางปฏิบัตินั่นหมายความว่า `Commands.run(“say Hello World”, dimension)` ควรอ่านว่า `dimension.runCommand(“say Hello World”)`

มีการเพิ่ม API ใหม่มากมายด้วยเช่นกัน:

* `mojang-minecraft:ItemStack`
	+ อีเวนต์ที่ใช้ในไอเทม:
		- เพิ่มอีเวนต์ `World.event.beforeItemUse` - เริ่มทำงานก่อนที่จะใช้ไอเทม สามารถยกเลิกได้
		- เพิ่มอีเวนต์ `World.event.itemUse` - เริ่มทำงานตอนไอเทมถูกใช้งาน อีเวนต์ก่อนหน้านี้จะไม่ถูกยกเลิก
		- เพิ่มอีเวนต์ `World.event.beforeItemUseOn` - เริ่มทำงานก่อนใช้กับบล็อก สามารถยกเลิกได้
		- เพิ่มอีเวนต์ `World.event.itemUseOn` - เริ่มทำงานเมื่อใช้กับบล็อก อีเวนต์ก่อนหน้านี้จะไม่ถูกยกเลิก
	+ โปรดทราบก่อนว่าอีเวนต์ต่อไปนี้ทำงานกับไอเทมที่ขับเคลื่อนด้วยข้อมูลเท่านั้น ถูกสร้างเป็นส่วนหนึ่งของตัวทดลองคุณสมบัติ Holiday Creator Features experiment:
		- เพิ่มอีเวนต์ `World.event.beforeItemDefinitionEvent` - เริ่มทำงานก่อนที่อีเวนต์ Item definition จะได้รับการประมวณผล สามารถยกเลิกได้
		- เพิ่มอีเวนต์ `World.event.itemDefinitionEvent` - เริ่มทำงานตอนที่อีเวนต์ Item definition ได้รับการประมวณผลแล้ว อีเวนต์ก่อนหน้านี้จะไม่ถูกยกเลิก
		- เพิ่มเมธอด `triggerEvent(eventName : String)` - ทริกเกอร์อีเวนต์บน ItemStack หากอีเวนต์ที่มีให้ eventName ตามที่กำหนดไว้ในไฟล์ Items JSON
	+ `mojang-minecraft:Entity`
		- เพิ่ม `runCommandmethod` เพื่อรันคำสั่งเป็นเอนทิตี
		- เพิ่ม `dimensionproperty` เพื่อบอกถึงมิติที่เอนทิตีอยู่
		- เพิ่มฟังชัน `addTag(tag: string): bool-` เพิ่มแท็กให้กับเอนทิตี ย้อนกลับเป็นจริงหากแท็กไม่ถูกระบุ
		- เพิ่มฟังชัน `hasTag(tag: string): bool-` ย้อนกลับเป็นจริงหากมีแท็กอยู่ที่เอนทิตี
		- เพิ่มฟังชัน `removeTag(tag: string): bool-` ลบแท็กออกจากเอนทิตี ย้อนกลับเป็นจริงหากแท็กถูกลบแล้ว
		- เพิ่มฟังชัน `function getTags(): string[]` คืนแท็กทั้งหมดของเอนทิตี
		- เพิ่มคุณสมบัติกลุ่มเป้าหมาย (Target) ให้เอนทิตี `targetrepresents` ถึงเอนทิตีที่เอนทิตีนี้กำลังเห็นเป็นเป้าหมาย เพื่อวัตถุประสงค์บางอย่าง เช่น การกำหนดเป้าหมายให้ AI
		- เพิ่มฟังชัน `getEntitiesFromViewVector(options: EntityRaycastOptions): Entity[]``
		- เพิ่มฟังชัน `getBlockFromViewVector(options: BlockRaycastOptions): Block`
	+ `mojang-minecraft:Dimension`
		- เพิ่ม `runCommandmethod` เพื่อรันคำสั่งในมิติ
		- เพิ่มฟังชัน `getEntitiesFromRay(pos: Location, direction: Location, options: EntityRaycastOptions): Entity[]`
		- เพิ่มฟังชัน `getBlockFromRay(pos: Location, direction: Location, options: BlockRaycastOptions) : Block`
	+ `mojang-gametest:Test`
		- เพิ่ม `getDimensionto`
	+ `mojang-gametest:ScriptSimulatedPlayer`
		- เพิ่มฟังชัน `giveItem(itemStack: ItemStack, selectSlot: boolean)`
		- เพิ่มฟังชัน `setItem(itemStack: ItemStack, selectSlot: boolean, slot: number)`
		- `GameTestExtensions` - ลบฟังชัน `giveItem`

## อ้างอิง

1. ↑ https://feedback.minecraft.net/hc/en-us/articles/4413896443021 - Feedback Minecraft.net
2. ↑ https://minecraft.fandom.com/wiki/Bedrock\_Edition\_beta\_1.18.10.20 - Minecraft Wiki