รีซอร์ซแพ็ก

จาก Minecraft Wiki
Information icon.svg
ฟีเจอร์นี้มีเฉพาะใน รุ่น Java และ รุ่น Bedrock
เทกซ์เจอร์ค่าเริ่มต้น กับรีซอร์ซแพ็กที่กำหนดเอง (Soartex Fanver) อยู่ตรงกลาง

ระบบรีซอร์ซแพ็ก (อังกฤษ: Resource pack) เป็น API ที่สามารถให้ผู้เล่นปรับแต่งเทกซ์เจอร์, โมเดล, เพลง, เสียง, ภาษา, end poem, splash และฟอนต์ โดยไม่ใช้โค้ดม็อดใด ๆ เลย

พฤติกรรม[แก้ไข | แก้ไขต้นฉบับ]

ไฟล์:Resource pack selection.png
The resource pack selection menu, showing two active resource packs (not including the default pack), and various other resource packs available for selection.
ไฟล์:SelectResourcepack.png
The default resource pack settings.

Resource packs can be placed in the folder resourcepacks within the .minecraft folder. Each resource pack is either a sub-folder or a .zip file within the resourcepacks folder. Once in the folder, a resource pack can be added from the options, where resource packs can be moved between "Available resource packs" and "Selected resource packs". "Selected resource packs" will also contain the default assets on the bottom, which cannot be removed.

Resource packs will load their assets based on the order of the packs on the list. The bottom most pack will load first, then each pack placed above it will replace assets of the same name with its assets.

รีซอร์ซแพ็กค่าเริ่มต้น[แก้ไข | แก้ไขต้นฉบับ]

A resource pack can be bundled with a world by saving it under the name resources and placing it directly in the world's folder. Note that the resource pack must be a .zip file. When playing the world, that resource pack will appear as the default right above the default resource pack.

A default resource pack can also be set on a server by changing adding a link to a .zip file download after the line resource-pack= in the server properties file. Users can still opt out of using the resource pack or choose not to download it though.

รุ่นเลกาซี่คอนโซล[แก้ไข | แก้ไขต้นฉบับ]

In Legacy Console Edition, mash-up packs are the equivalent of resource packs. They are available as downloadable content that can be bought from the Xbox Marketplace, PlayStation Store, Nintendo eShop, or the downloadable content section of the game. Mash-up packs also come with a skin pack and a themed world.

รุ่น Bedrock[แก้ไข | แก้ไขต้นฉบับ]

Similarly to skins, resource packs can be bought or made in Bedrock Edition. As of Alpha 0.15.0 iOS users can download resource packs on the system itself with the .mcpack and .mcworld file names. When these files are opened, they are automatically imported into the game without any need for file system access.

เนื้อหา[แก้ไข | แก้ไขต้นฉบับ]

A resource pack is identified by Minecraft based on the presence of the file pack.mcmeta in the root directory, which contains a JSON file with the following information:

  • Nbtsheet.png The root tag
    • Nbtsheet.png pack: Holds the resource pack information
      • Nbtsheet.png pack_format: Pack version. If this number does not match the current required number, the resource pack will display an error and required additional confirmation to load the pack. Requires 1 for 1.6-1.9, 2 for 1.9 and 1.10, 3 for 1.11 and 1.12, and 4 for 1.13.
      • Nbtsheet.png description: Text that will be shown below the pack name in the resource pack menu. The text will be shown on two lines. If the text is too long it will be cut off.
    • Nbtsheet.png language: Contains additional languages to add to the language menu
      • Nbtsheet.png A language Language code for a language, corresponding to a .lang file with the same name in the folder assets/minecraft/lang
        • Nbtsheet.png name: The full name of the language
        • Nbtsheet.png region: The country or region name
        • Nbtsheet.png bidirectional: If true, the language reads right to left.

The root directory also contains an optional image called pack.png, which will show as the thumbnail for the pack on the resource pack selection menu.

ภาษา[แก้ไข | แก้ไขต้นฉบับ]

Resource packs can create language files of the type .json in the folder assets/minecraft/lang. Each file will either replace information from a file of the same name in the default or a lower pack, or it will create a new language as defined by pack.mcmeta.

Each line in the .lang file is in the format of identifier=name. identifier is the name that the game looks for to determine the name for something, and as such it should not be changed. name is the name that is displayed, which takes any text after the equals sign up to the end of the line. For example, stone in the default language file is tile.stone.stone.name=Stone, with tile.stone.stone.name being the identifier, and Stone being the displayed name. Blank lines and lines starting with # are ignored.

Language files only need to add lines that are actually changed by the pack, any names that are not in the pack will be loaded from the pack below, or default if no pack changes the names.

โมเดล[แก้ไข | แก้ไขต้นฉบับ]

Models are files in JSON format with the extension .json, which determine the shape and textures of blocks and items.

Blocks use a block state file from assets/minecraft/blockstates to determine which model is loaded for each variant from the folder assets/minecraft/models/block. Meanwhile, each item has an item model in assets/minecraft/models/item to determine its model, which either loads from a block's model, contains data for its own custom model, or uses the default "flat" or "entity" model.

Models and block states used in packs below the top one will still be loaded unless overridden in the top pack, which may cause some textures and models used by the top pack to no longer be loaded.

เสียง[แก้ไข | แก้ไขต้นฉบับ]

Resource packs load additional sounds with the file type of .ogg. Each sound placed in the pack will override the sounds from packs below, and packs also contain a file called sounds.json which is placed within assets/minecraft. Unlike most other files in resource packs, sounds.json will merge sound information from packs below the top pack, rather than each sounds.json file overriding the previous completely.

เทกซ์เจอร์[แก้ไข | แก้ไขต้นฉบับ]

The "missing texture" for invalid or missing textures.

For block or item textures to function, they must have equal width and height (or height that is a multiple of the width if animated); otherwise it will display as a magenta and black checkerboard. For most other textures, the file will simply be stretched to fit the required dimensions.

Most solid blocks will turn any transparent area fully opaque. Some other blocks, which have "cutout" transparency (like glass) will turn all pixels that are less than 10% opaque fully transparent and all other pixels completely opaque. Every other block renders textures with semi-transparency as-is. All items and any blocks or entities which are semi-transparent by default support semi-transparency.

If a file does not exist in any resource pack, including the default, it will display as a magenta and black checkerboard (แม่แบบ:Color and แม่แบบ:Color).

แอนิเมชัน[แก้ไข | แก้ไขต้นฉบับ]

Block and item textures support animation by placing each additional frame below the last. The animation is then controlled using a .mcmeta file in JSON format with the same name and .png at the end of the filename, in the same directory. For example, the .mcmeta file for stone.png would be stone.png.mcmeta.

  • Nbtsheet.png The root tag
    • Nbtsheet.png animation: Contains data for the animation
      • Nbtsheet.png interpolate: If true, Minecraft will generate additional frames between frames with a frame time greater than 1 between them. Defaults to false.
      • Nbtsheet.png width: The width of the tile, as a direct ratio rather than in pixels. This is unused in vanilla but can be used by mods to have frames that are not perfect squares.
      • Nbtsheet.png height: The height of the tile in direct pixels, as a ratio rather than in pixels. This is unused in vanilla but can be used by mods to have frames that are not perfect squares.
      • Nbtsheet.png frametime: Sets the default time for each frame in increments of one game tick. Defaults to 1.
      • Nbtsheet.png frames: Contains a list of frames. Defaults to displaying all the frames from top to bottom.
        • Nbtsheet.png A number corresponding to position of a frame from the top, with the top frame being 0
        • Nbtsheet.png A frame Specifies a frame with additional data
          • Nbtsheet.png index: A number corresponding to position of a frame from the top, with the top frame being 0
          • Nbtsheet.png time: The time in ticks to show this frame, overriding "frametime" above.

If the .mcmeta file does not exist in the pack and the texture does, the game will assume the texture is not animated, rather than loading a .mcmeta file from a pack below that pack. If no .mcmeta file exists for a texture with unequal dimensions, the texture will appear as a purple and black checkerboard.

แผนที่สี[แก้ไข | แก้ไขต้นฉบับ]

Colormaps are 256×256 pixel images which tell the game which color to use in each biome. They are located in assets/minecraft/textures/colormap. The game contains two colormaps, foliage.png which colors plants such as leaves (except birch and spruce) and vines, and grass.png which colors grass and grass blocks. Colormaps can be disabled on individual blocks by removing the tintindex tag.

ฟอนต์[แก้ไข | แก้ไขต้นฉบับ]

Font files contain a grid of white characters, which are automatically colored by Minecraft as needed in game. The character sizes are automatically determined based on the last line of pixels containing any alpha value. Due to the way fonts are detected, filling the background of a character with a color containing a 1% alpha background will cause the full width to render without having a visible background to the character.

  • Glyphs 0x20 (space) through 0x7E (tilde) display the standard ASCII characters,
  • Glyphs 0x7F through 0xFF display the Codepage 437 characters.

The font file is located in assets/minecraft/textures/font/ascii.png

The font file used when displaying the enchanting "alien font" is assets/minecraft/textures/font/ascii_sga.png

คุณสมบัติ[แก้ไข | แก้ไขต้นฉบับ]

Textures from assets/minecraft/textures/misc support a .mcmeta file in JSON format containing additional effects to apply to the texture. The file is contained in the same directory as the texture, and has the same name as the texture, except appended with .mcmeta. For example, the file pumpkinblur.png can have a properties file called pumpkinblur.png.mcmeta

  • Nbtsheet.png The root tag
    • Nbtsheet.png texture: Contains data for the texture
      • Nbtsheet.png blur: Causes the texture to blur when viewed from close up. Defaults to false
      • Nbtsheet.png clamp: Causes the texture to stretch instead of tiling in cases where it otherwise would, such as on the shadow. Defaults to false
      • Nbtsheet.png mipmaps: Custom mipmap values for the texture

If the .mcmeta file does not exist in the pack and the texture does, the game will load the default settings, rather than loading a .mcmeta file from a pack below that pack.

ข้อความ[แก้ไข | แก้ไขต้นฉบับ]

Three .txt files in UTF-8 format exist in assets/minecraft/texts which are used by the game to determine the text to display.

The file end.txt contains the text of the end poem, using formatting codes to apply the colors to the two speakers, and with the text PLAYERNAME being replaced with the player's name. After that file is shown, the contents of credits.txt will be shown.

The file splashes.txt contains lines of text separated using line breaks to determine the splashes to display in game. Any splash can be replaced with different text.

โครงสร้างโฟลเดอร์[แก้ไข | แก้ไขต้นฉบับ]

รีซอร์ซแพ็ก/Folders

วิดีโอ[แก้ไข | แก้ไขต้นฉบับ]

แม่แบบ:Video note

รีซอร์ซแพ็ก/video

ประวัติ[แก้ไข | แก้ไขต้นฉบับ]

รุ่น Java
1.6.113w24aAdded resource packs, replacing the functionality of texture packs. Minecraft Texture Ender is available from Mojang to automatically convert 1.5 compatible texture packs to resource packs.
1.6.2?Fixed distorted font when HD font is used.[1]
1.7.213w36aAdded the ability to apply multiple resource packs at once.
13w42aMoved files from assets/minecraft/music to assets/minecraft/sounds/music and files from assets/minecraft/sound to assets/minecraft/sounds.
1.7.413w48aRemoved the ability to change the Mojang logo.
1.814w06aAdded the ability to change the block models.
14w07aResource packs can now be bundled with a map.
14w25aThe model format now supports custom item models.
Textures can now be specified for blocks and items.
Added the interpolate tag for animations.
1.8.8preResource packs now display an error if the pack version number is wrong. At this time, it requires a pack version number of 1.
1.915w31aResource packs version number was changed to 2, due to changes in the model system, such as item tags, multipart, and changes to display tags.
Using resource packs with outdated display tags will cause the models to seem abnormally up-scaled and the wielded block will not be rotated in the hand, along with blocks in the inventory replaced with a 2D texture. This is similar to what happens when a model has no display tags. See here for an example.
1.1116w32aResource packs version number changed to 3, due to the change that all files should have lowercase letters.
1.1317w43aThe default resource pack can now be moved up and down, just like other resource packs.
17w48aChanged format number to 4, due to The Flattening.
pocket Alpha
0.15.0?Added resource packs Plastic and City.
0.15.7Added Natural resource pack.
0.15.8Added Fantasy resource pack.
0.16.2Added Cartoon resource pack.
รุ่น Pocket
1.0.3Added Candy resource pack.

ดูเพิ่ม[แก้ไข | แก้ไขต้นฉบับ]

อ้างอิง[แก้ไข | แก้ไขต้นฉบับ]