Kailangan ng dalawang pack ng mga custom na painting at disc, at ang pag-install ng isa lang sa mga ito ang karaniwang sanhi ng pagpalya
Nirerehistro ng datapack ang content; ibinibigay ng resource pack ang texture at ang tunog. Datapack lang at magrerehistro ito nang walang maipapakita. Dagdag pa ang limitasyong 4×4 at kung bakit hindi lang pampaganda ang haba ng disc.
Ang mga painting at music disc ay parehong mga totoong registry sa modernong Java, na nangangahulugang maaari mong idagdag ang mga ito sa halip na palitan ang mga vanilla. Walang anumang idaragdag mo na magpapalayas sa isang umiiral nang painting o disc.
Ang problema ay nahahati ang content sa dalawang magkaibang uri ng pack, at walang silbi ang bawat isa kapag nag-iisa.
Ano ang napupunta saan
Nirerehistro ng datapack ang bagay:
data/<ns>/painting_variant/<id>.json asset_id, width, height, title, author
data/<ns>/jukebox_song/<id>.json sound_event, description, length, comparator
Ibinibigay ng resource pack ang iyong nakikita at naririnig:
assets/<ns>/textures/painting/<id>.png
assets/<ns>/sounds/<id>.ogg
assets/<ns>/sounds.json
I-install lamang ang datapack at matagumpay na marerehistro ang content — umiiral ito, /give finds it, and there is simply no texture and no audio. That is a much more confusing outcome than an outright failure, and it is the usual reason a custom painting "didn't work". The tool on this page ships both in one zip specifically so they cannot be separated.
Pansinin ang dalawa pack.mcmeta files. They are separate packs with separate identities; there is no combined format that holds both.
Mas mahigpit ang mga registry id kaysa sa mga filename
Maaari lamang maglaman ang isang id ng a-z, 0-9, _, . and -. Anything else and mabibigo sa pag-load ang pack — hindi lang ang sirang entry, kundi ang mismong pack. Malalaking titik at mga espasyo ang dalawang bagay na karaniwang nagiging sanhi ng pagkakamali, dahil karaniwan ang dalawang ito sa filename na iyong ini-drag.
Mga Painting: 1×1 hanggang 4×4
Ang mga sukat ng vanilla ay mula 1 × 1 hanggang 4 × 4 na block, na nagbibigay ng labing-anim na posibleng hugis. Magre-render pa rin ang isang variant sa labas ng hanay na iyon — hindi ito tatanggihan ng laro — ngunit hindi ito maisasabit sa pader na may sukat na inaasahan ng mga manlalaro, kaya hindi talaga ito mailalagay sa isang normal na build.
Ang sukat ay idinideklara sa JSON bilang width and height, in blocks. It is not inferred from the PNG, so a 3 × 1 painting whose texture is square is a valid file that displays stretched.
Ang haba ng disc ay hindi lamang isang label
length_in_seconds drives two things: the jukebox timing, and the comparator ramp — ang signal na binabasa ng isang comparator mula sa tumutugtog na jukebox ay tumataas sa kabuuan ng idineklarang tagal ng track.
Kaya ang hindi tumpak na haba ay hindi lamang isang kosmetikong error. Magdeklara ng 200-segundong track bilang 100 at tatapusin ng comparator ang ramp nito sa kalagitnaan, na tahimik na sisira sa anumang redstone na nakatali sa pagtatapos ng disc. Binabasa ng tool na ito ang totoong tagal mula sa file sa halip na hilingin sa iyong i-type ito, dahil mismo sa kadahilanang iyon.
Isinusulat din ang mga track gamit ang "stream": true in sounds.json. Music is long, and loading a full track into memory before playing it stutters — streaming is the right default for anything disc-length, and the wrong one for a short sound effect.