Spawn rule के बिना मॉब सिर्फ़ अपने spawn egg या /summon से आता है। Spawn rule गेम को बताता है कि वह अपने आप कहाँ और कब आ सकता है: किन biomes में, कितना अंधेरा होना चाहिए, एक साथ कितने, और दूसरे मॉब की तुलना में कितनी बार।
यह पेज एंटिटी फ़ाइल वाले Ruby Golem का इस्तेमाल करता है। पूरे मॉब के लिए आपका पहला कस्टम मॉब से शुरू करें।
फ़ाइलें
BP/
entities/
ruby_golem.json
spawn_rules/
ruby_golem.jsonफ़ाइल के नाम से कोई फ़र्क नहीं पड़ता। Rule को मॉब से उसके अंदर का identifier जोड़ता है।
मॉब spawnable होना चाहिए
Spawn rules तभी काम करते हैं जब मॉब की बिहेवियर फ़ाइल के description में "is_spawnable": true हो।
पहला spawn rule
Ruby Golems रेगिस्तान और badlands में, छोटे groups में, रेत या लाल रेत पर, दिन की रोशनी में आते हैं:
{
"format_version": "1.8.0",
"minecraft:spawn_rules": {
"description": {
"identifier": "wiki:ruby_golem",
"population_control": "animal"
},
"conditions": [
{
"minecraft:spawns_on_surface": {},
"minecraft:spawns_on_block_filter": ["minecraft:sand", "minecraft:red_sand"],
"minecraft:brightness_filter": {
"min": 7,
"max": 15,
"adjust_for_weather": false
},
"minecraft:weight": { "default": 6 },
"minecraft:herd": { "min_size": 1, "max_size": 2 },
"minecraft:biome_filter": {
"any_of": [
{ "test": "has_biome_tag", "value": "desert" },
{ "test": "has_biome_tag", "value": "mesa" }
]
}
}
]
}
}लगभग हर vanilla spawn rule अब भी "format_version": "1.8.0" इस्तेमाल करता है, और आप भी कर सकते हैं।
Description
| Field | यह क्या करता है |
|---|---|
identifier | मॉब की ID। यह एंटिटी फ़ाइल से बिल्कुल मेल खानी चाहिए। |
population_control | मॉब किस pool में गिना जाता है। हर pool की अपनी सीमा होती है, इसलिए आपका मॉब world को भर नहीं सकता। |
जो pools आप सबसे ज़्यादा इस्तेमाल करेंगे:
| Pool | कौन इस्तेमाल करता है |
|---|---|
animal | ज़मीन के जानवर, जैसे गाय, सूअर और भेड़ |
water_animal | मछली, squid, dolphins और axolotls |
monster | दुश्मन मॉब, जैसे zombies और skeletons |
ambient | छोटे बैकग्राउंड मॉब, जैसे चमगादड़ |
Vanilla में अकेले मॉब के लिए कुछ खास pools भी हैं, जैसे cat और pillager।
Conditions
conditions एक list है। हर entry नियमों का एक पूरा सेट है। अगर गेम को कोई ऐसी जगह मिलती है जो किसी एक entry से मेल खाती है, तो मॉब वहाँ spawn हो सकता है।
एक entry के अंदर हर कंपोनेंट को पास होना होता है। तो ऊपर के rule का मतलब है "सतह पर AND रेत पर AND दिन की रोशनी में AND रेगिस्तान या badlands biome में"।
मॉब को दो बिल्कुल अलग जगहों पर चाहते हैं, जैसे रात में गुफाओं में और दिन में समुद्र तट पर? सब कुछ एक में ठूँसने की जगह list में दूसरी entry जोड़ें।
कहाँ: सतह, ज़मीन के नीचे या पानी
इनमें से कम से कम एक ज़रूरी है, नहीं तो मॉब के spawn होने की कोई जगह नहीं होती। ये खाली objects हैं: बस इनका होना ही इन्हें चालू कर देता है।
| कंपोनेंट | मॉब को spawn करता है |
|---|---|
minecraft:spawns_on_surface | ज़मीन पर, खुले आसमान के नीचे |
minecraft:spawns_underground | गुफाओं में, ऊपर ब्लॉक के साथ |
minecraft:spawns_underwater | पानी में |
minecraft:spawns_lava | Lava में, striders की तरह |
आप इन्हें मिला सकते हैं। Vanilla axolotls गुफा के पानी में आने के लिए spawns_underground और spawns_underwater दोनों इस्तेमाल करते हैं।
कौन-से ब्लॉक
"minecraft:spawns_on_block_filter": ["minecraft:sand", "minecraft:red_sand"],
"minecraft:spawns_on_block_prevented_filter": ["minecraft:cactus"]spawns_on_block_filter: मॉब के नीचे का ब्लॉक इनमें से एक होना ही चाहिए। एक अकेला ब्लॉक सादी string भी हो सकता है।spawns_on_block_prevented_filter: मॉब इन ब्लॉक पर कभी spawn नहीं हो सकता।
कौन-से biomes
minecraft:biome_filter एक सामान्य filter है, आमतौर पर has_biome_tag test के साथ। हर biome में कुछ tags होते हैं, जैसे desert, forest, ocean, frozen, overworld या nether। एक-एक biome का नाम लिखने से बेहतर है tag जाँचना, क्योंकि इससे biome के variants और दूसरे ऐड-ऑन के biomes भी पकड़ में आ जाते हैं।
"minecraft:biome_filter": [
{ "test": "has_biome_tag", "value": "overworld" },
{ "test": "has_biome_tag", "operator": "not", "value": "ocean" }
]सादी list all_of की तरह काम करती है: यहाँ, "Overworld में, लेकिन समुद्र में नहीं"। किस biome में कौन-से tags हैं, यह Vanilla biomes में देखें, और biomes को tags कैसे मिलते हैं, यह biome tags में देखें।
animal और monster tags
ज़्यादातर ज़मीनी biomes में animal और monster tags होते हैं। Vanilla गायें animal के साथ has_biome_tag इस्तेमाल करती हैं, और zombies monster। यह "जहाँ भी कोई सामान्य मॉब रह सके" कहने का आसान तरीका है।
रोशनी का स्तर
"minecraft:brightness_filter": {
"min": 0,
"max": 7,
"adjust_for_weather": true
}रोशनी 0 (घुप अंधेरा) से 15 (पूरी धूप) तक जाती है। जानवर आमतौर पर 7 से 15 इस्तेमाल करते हैं, monsters 0 से 7। adjust_for_weather को true करने पर बारिश और तूफ़ान को ज़्यादा अंधेरा माना जाता है, इसलिए तूफ़ानी दिन में monsters आ सकते हैं।
कितनी बार: weight
"minecraft:weight": { "default": 6 }जब गेम किसी जगह पर spawn करने के लिए मॉब चुनता है, तो बड़े weight वाले मॉब ज़्यादा बार चुने जाते हैं। अंदाज़े के लिए: vanilla गायें 8, चमगादड़ 10, और zombies 100 इस्तेमाल करते हैं। किसी दुर्लभ मॉब के लिए कम से शुरू करें और टेस्ट करते हुए बढ़ाएँ।
कितने: herd
"minecraft:herd": {
"min_size": 2,
"max_size": 4,
"event": "minecraft:entity_born",
"event_skip_count": 2
}min_sizeऔरmax_size: एक साथ कितने spawn होते हैं।event(optional): एक इवेंट जो group के मॉब पर spawn होते समय fire होता है।event_skip_count: इवेंट fire होना शुरू होने से पहले कितने मॉब spawn होते हैं।
ऊपर का उदाहरण परिवारों के लिए vanilla की तरकीब है: पहले 2 सामान्य वयस्क के रूप में spawn होते हैं, और बाकियों को minecraft:entity_born मिलता है। उन मॉब की एंटिटी फ़ाइलों में यह इवेंट baby group जोड़ता है, इसलिए बाकी बच्चे होते हैं। Foxes और axolotls ठीक यही करते हैं।
कितनी भीड़: density limit
"minecraft:density_limit": {
"surface": 4,
"underground": 2
}सिर्फ़ इस मॉब के लिए एक सीमा, pool की सीमा के ऊपर। जब इतने पहले से आसपास हों, तो सतह पर (या ज़मीन के नीचे) और spawn नहीं होते। उन ताकतवर या दुर्लभ मॉब के लिए काम का है जिन्हें कभी भीड़ में नहीं आना चाहिए।
Difficulty
"minecraft:difficulty_filter": {
"min": "easy",
"max": "hard"
}Difficulties हैं peaceful, easy, normal और hard। दुश्मन मॉब आमतौर पर easy से शुरू होते हैं, इसलिए वे Peaceful पर कभी नहीं आते।
और conditions
| कंपोनेंट | यह क्या जाँचता है |
|---|---|
minecraft:height_filter | ऊँचाई की वह range (min, max) जिसमें मॉब spawn हो सकता है |
minecraft:distance_filter | उसे प्लेयर से कितनी दूर होना चाहिए (min, max) |
minecraft:world_age_filter | मॉब के आने से पहले world कितना पुराना होना चाहिए (min) |
minecraft:disallow_spawns_in_bubble | इसे bubble columns में spawn होने से रोकता है |
minecraft:permute_type | कभी-कभी weight के हिसाब से इसकी जगह कोई दूसरा मॉब spawn करता है। Zombies इससे कुछ zombie villagers बनाते हैं। |
रात वाला version
गुफाओं में भी गुस्सैल Ruby Golems चाहिए? अलग नियमों के साथ दूसरी condition जोड़ें:
"conditions": [
{
"minecraft:spawns_on_surface": {},
"minecraft:spawns_on_block_filter": ["minecraft:sand", "minecraft:red_sand"],
"minecraft:brightness_filter": { "min": 7, "max": 15, "adjust_for_weather": false },
"minecraft:weight": { "default": 6 },
"minecraft:herd": { "min_size": 1, "max_size": 2 },
"minecraft:biome_filter": { "test": "has_biome_tag", "value": "desert" }
},
{
"minecraft:spawns_underground": {},
"minecraft:brightness_filter": { "min": 0, "max": 4, "adjust_for_weather": false },
"minecraft:height_filter": { "min": -64, "max": 0 },
"minecraft:weight": { "default": 2 },
"minecraft:herd": { "min_size": 1, "max_size": 1, "event": "wiki:become_angry" },
"minecraft:density_limit": { "underground": 2 },
"minecraft:biome_filter": { "test": "has_biome_tag", "value": "overworld" }
}
]दूसरी entry ज़मीन के बहुत नीचे अकेले golems spawn करती है और उन पर तुरंत wiki:become_angry fire करती है। यह इवेंट एंटिटी इवेंट्स पेज से आता है।
Spawn rules टेस्ट करना
अपने आप होने वाला spawning टेस्ट करने में समय लगता है, इसलिए इसे आसान बनाएँ:
- Creative में एक नया world बनाएँ और अगर आपका मॉब दुश्मन है तो difficulty Easy या उससे ऊपर रखें।
- टेस्ट करते समय
weightबहुत बढ़ा दें (जैसे100), फिर बाद में वापस कम करें। - सही biome के आसपास उड़ें। मॉब प्लेयर से कुछ दूरी पर ही spawn होते हैं।
- उन्हें हटाने के लिए
/kill @e[type=wiki:ruby_golem]इस्तेमाल करें और नए आते हुए देखें।
जब कुछ गड़बड़ हो
| आपको क्या दिखता है | सबसे संभावित कारण |
|---|---|
| यह कभी spawn नहीं होता | is_spawnable false है, identifier मेल नहीं खाता, या condition में spawns_on_surface जैसा कोई "कहाँ" वाला कंपोनेंट नहीं है |
| किसी biome में कभी spawn नहीं होता | उस biome में वह tag नहीं है। Vanilla biomes देखें। |
| बहुत ज़्यादा हो जाते हैं | weight या max_size कम करें, या density_limit जोड़ें |
| दुश्मन मॉब Peaceful पर कभी नहीं दिखता | यह difficulty_filter अपना काम कर रहा है |
| दिन में monsters | adjust_for_weather चालू है और बारिश हो रही है |
और मदद समस्या निवारण में है। अगला: Filters।