آموزش کامند نویسی پیشرفته(NBT tags)

به نام خدا

سلام.من تو سایت گشتم دیدم کامندای باحال زیادی وجود داره که در واقع NBT tag هستن که یه چیزی رو دستی میکنه. اما کسی آموزششون رو نداده.به جز چنتا مورد.مثل ویلیجر کامندی یا … الان من میخوام چنتا چیز که تو کامند نویسی به درد میخورن رو بهتون یاد بدم.

اول بگم وقتی شما با کامند ها بدون NBT tags کار میکنین میتونین از کلید Tab استفاده کنید که اگه یه چیزی رو اسمشو کامل بلد نبودین یا نمیدونستین چه چیزی باید بنویسید بتون میگفت.یا با کامند help میتونستید آموزش یه کامند رو ببینید.اما وقتی با NBT tags کار میکنین نمیتونین این کار رو انجام بدین.البته تو سایت های خارجی آموزششون هست.

خب شروع میکنیم.اول یه کامند بلاک میگیریم.با کامند:

/give @p command_block

درضمن برای استفاده از کامند بلاک (چه نوشتن کامند توش و چه گزاشتنش یه جایی یا شکستنش) باید در حالت کریتیو باشید.مگه تو کریتیو یه کامند توش بنویسید بعد تو سروایول با دکمه فعالش کنید.

خب.حالا کامند بلاک رو یه جایی میزاریم و روش یه دکمه میزاریم.بعد رو کامند بلاک کلیک چپ میکنیم و کامند مورد نظر رو مینویسیم.

حالا آموزش کامند ها.برای استفاده از این NBT tag ها من از کامند give استفاده میکنم.فرمول کامند give :

/give shakhs chiz tedad data NBT

اون اسلشه اوله.(اسلش:/)یکمم توضیح بدم.اول میزنید give بعد اسم کسی که میخواین آیتم بش داده شه رو بزنید.(معمولا برای سرورا اسم شخص مهمه)درضمن به جای اسم میتونین چنتا چیز دیگه هم بنویسید.

p@:یعنی من(کسی که کامند رو وارد میکنه)

a@:یعنی همه(همه بازیکن ها که تو سرور یا بازی چند نفره به در میخوره)

r@:یعنی یکی شانسی(اگه تنها بازی میکنید همیشه خودتون در میاین و بازم تو بازی چند نفره یا سرور به درد میخوره)

e@:یعنی هرچی بازیکن،موب(موجودات تو بازی)،تیرها(گلوله برفی،تیر تیرِ تیرکمون،رعد و برق و ..) و …، البته بلاک ها حساب نیستن.

چیز هم همون چیزیه که میخواین.البته بگم همه چیز دقیقا خودش نمیشه!!(چی گفتم)مثلا اگه oak wood میخواین باید به جه oak wood بنویسین log.اگه بین چنتا کلمه از یه اسم فاصله بود باد از آندرلاین (_)استفاده کنیم.

تعداد هم که باید حداکثر 64 باشه.

دیتا(داده) چیزی که من ازش فهمیدم اینه که میگه چقد از اون وسیله استفاده کردی.مثلا یه شمشیر الماسی 1561 بار قابل استفادست.اگه دیتا رو بزنین 10 اونوقت 1551 بار میتونین ازش استفاده کنید.

NBT هم که الان میخوام بگم.راستی یادم رفت بگم اگه بخواین فقط استفاده کنین فقط به give و شخص و آیتم نیاز دارین.اگه تعداد رو نزنین میشه 1.اگه دیتا رو نزنیم میشه 0 و اگه NBT رو نزنین چیزی نمیشه.درضمن برا اینکه یه چیزی رو بزنین به چیزهای قبلش هم نیاز دارین.مثلا اگه بخواین دیتا رو بزنین 10 ، حتما باید قبلش تعداد رو بزنین.پس برای NBT ها باید تمام قسمت های کامند give استفاده شن.(شوند)

خب تازه میخوایم شروع کنیم.ببخشید اینقد طولش میدم.میخوام مطلبم چیزی کم نداشته باشه و تازه کار ها هم بتونن استفاده کنن.دوباره میگم تو سایت مدکرافت(پست هاش)از این NBT ها استفاده شده ولی آموزششون نیست.)

اولین NBT : نشکن بودن(Unbreakable)

این خیلی آسونه.فقط کافیه بعد دیتا دوتا آکولاد {} باز کنین و توش بنویسین Unbreakable بعد : و بعد 1 یا 0 یعنی آره و 0 یعنی نه.اینم بگم این نشکن بودنه نه شکننده بودن.یعنی بخوایم بگیم هیچ نشکنه باید بزنیم 1.

مثال:میخوایم یه بیل طلایی بسازیم که هیچ نشکنه.درحالی که در حالت عادی فقط 32 بار قابل استفادست.پس مینویسیم.

/give @p golden_shovel 1 0 {Unbreakable:1}

اسلش اوله.اول که گفتیم give یعنی از این کامند استفاده میکنیم.بعد که گفتیم p@ یعنی یه چیزی بده به خودم که تو ادامه کامند مشخصش میکنیم.golden_shovel هم همون بیل طلاییه.1 تعداد میتونین عوضش کنین.0 هم مهم نیست چون Unbreakable است.ولی حتما باد بنویسینش(هر عددی باشه مهم نیست)اون دو تا آکولاد هم که برا NBT هستن.بعد گفتیم Unbreakable:1 هم یعنی نشکن بودن فعال.

یه مثال دیگه هم میزنم که خوب یاد بگیرین.

مثال:میخوایم یه شمشیر سنگی بسازیم که هیچ نشکنه.پس مینویسیم:

/give @p stone_sword 1 0 {Unbreakable:1}

اسلش اوله.اول که کامند give رو وارد کردیم.بعد گفتیم یه چیزی بده به من.بعد گفتیم اون چیزه شمشیر سنگیه.بعد گفتیم یدونه بده.بعد گفتیم استفاده نشده باشه که اینجا مهم نیست چون شمشیر نشکنه ولی باید نوشته شه.بعد گفتیم شمشیر نشکن است.

راستی اون Unbreakable حتما باید U حرف بزرگ باشه بقیه کوچیک.

NBT بعدی هم که خــــــــــیــــــــــلـــــــــــــــی به درد میخوره اسمش هست ench(مخفف enchant) که برا انچنت کردن وسایله.تو یکی از پستا مد کرافت یکی اومده انچنت ها رو توضیح داده و کامند enchant رو هم توضیح داده.خیلی هم کامله.اما این انچنت اون انچنت نیست.خب اول بگم انچنت چیه(شاید بعضی ها ندونن).

انچنت یعنی جادو که روی بعضی وسایل انجام میشه و باعث میشه کار شما راحت تر صورت بگیره.همیشه هم مفیده.برای انچنت کردن وسایل شما به میز انچنت نیاز دارین.یا برای ترکیب انچنت ها از سندان استفاده میکنید.میتونید هم با کامند انچنت کنید.اینم

/enchant shakhs jado level

اسلش اوله.یه توضیح کوتاهی هم بدم.اول که گفته enchant که اسم کامنده.شخص هم کسیه کیه میخواد وسیله ای رو انچنت کنه.درضمن باید وسیله ای که میخواین با این کامند انچنت کنین اون لحظه تو دستتون باشه.jado هم که یا اسم انچنت یا آی دی انچنت رو میزنین.(تو سایت هست).تو لِوِل هم سطحشو.البته یه حداکثر سطحم دارن که از اون بیشتر بزنین ارور میده.

خوب حالا فرق کامند enchant  و  NBT انچنت برای کامند give:

تو کامند انچنت شما با یه سری مشکلات رو به رو هستید.مثلا لول محدودیت داره.یا بعضی انچنتا رو بعضی وسایل انجام نمیشه یا نمیشه بعضی انچنت ها رو روی یه وسیله با هم داشت.یا اصلا بعضی چیزا انچنت نمیشن.

اما با NBT ها میتونین لول رو بدون محدودیت بگین(البته تا 32767 میشه).هر انچنتیرو رو هر چیزی داشته باشن.درضمن برای استفاده از این NBT  حتما و حتما آموزشی که تو سایت هست رو بخونین.(یه اشتباه تایپی داره.آی دی Fortune میشه 35.اون نوشته 34) خب حالا آموزشش:

فرمول:(این یکم سخت تره)

{ench:[{id:#,lvl:#}]}

ench که همیشه ثابته.id و lvl هم ثابتن اما اون # ها باید عوض بشن.جلو آی دی حتما و حتما آی دی انچنت رو بنویسین.(تو سایت هست)دوباره میگم حتما حتما حتما آی دی.اسم نمیشه.آی دی رو بنویسین.جلو لِوِل هم که سطح رو مینویسیم.برا اینکه چنتا انچنت رو باهم داشته باشه.

{ench:[{id:#,lvl:#},{id:#,lvl:#}]}

خب دوتا مثال هم بزنیم.

مثال:یه کلنگ الماسی با سرعت فوق العاده بگیریم که حتی آبسیدان رو هم با یه ضربه بشکنه.(لول انچنت 10000)

/give @p diamond_pickaxe 1 0 {ench:[{id:32,lvl:10000}]}

اسلش اوله.اول که کامند give رو گفتیم.بعد گفتیم یه چیزی بده به من.بعد گفتیم کلنگ الماسی بده.بعد گفتیم یدونه بده.بعد گفتیم استفاده نشده باشه.و حالا جای مهم.اونجا که گفته ench یعنی انچنت داشته باشه.id:32 هم یعنی انچنت سرعت شکستن بلاک.(آی دیش 32 دوئه)بعد گفتیم لولش 10000 باشه(اونجا که گفته lvl:10000 ) .و با این انچنت سرعت میتونه حتی آبسیدان رو هم با یه ضربه بشکونه.البته این انچنت فقط سرعت کندن چیزایی رو زیاد میکنه که اون وسیله تخصص کندشون رو داره.حالا یه مثال دیگه.

مثال2:یه کلنگ آهنی که همه چیز رو با یه ضربه بشکونه و اگه الماس یا طلا یا آهن یا … شکوندین بتون چنتا ازش بده.(لول سرعت:10000 و لول شانس:100)

/give @p iron_pickaxe 1 0 {ench:[{id:32,lvl:10000},{id:35,lvl:100}]}

اسلش اوله.خب اول که کامند give رو اعلام کردیم.بعد گفتیم یه چیزی بده به من.بعد گفتیم کلنگ آهنی بده به من.بعد گفتیم یدونه کلنگ آهنی بده به من.بعد گفتیم استفاده شده نباشه. و حلا جای مهم.ench یعنی انچنت داشته باشه.id:32,lvl:10000 این انچنت سرعت رو انتخاب کرده و لول 10000 رو بش داده.id:35,lvl:100 این انچنت شانس رو انتخاب کرده و لول 100 رو بش داده.نکته:این 100 رو زیادی زیاد نکنید.چون انقدر از یه چیزی بتون میده که بازی هنگ میکنه.

خب قبل NBT بعدی یه نکته بتون بگم.برای استفاده از چنتا NBT از علامت ,(همون (و) ولی تو کیبرد انگلیسی) استفاده میکنید.

مثال:یه بیل چوبی بت بده که سرعتش خیلی باشه و نشکنه.(لول سرعت:10000)

/give @p wooden_shovel 1 0 {Unbreakable:1,ench:[{id:32,lvl:10000}]}

اسلش اوله.اول کامند give رو اعلام کردیم.بعد گفتیم یه چیزی بده به من.بعد گفتیم بیل چوبی بده به من.بعد گفتیم یدونه بیل چوبی بده به من.بعد گفتیم استفاده نشده باشه.(مهم نیست چون از Unbreakable استفاده کردیم.)و حالا جای مهم.تو NBT اول گفتیم Unbreakable:1 یعنی نشکن باشه.با استفاده از علامت ,(همون (و) ولی تو کیبرد انگلیسی)  NBT دوم رو گفتیم که گفته ench:[{id:32.lvl:10000}] یعنی انچنت شده باشه با انچنت سرعت لول 10000.

حالا NBT بعدی.این NBT زیاد به درد نمیخوره اما میگمش.display.با این میتونین برای یه آیتم اسم بزارین.یا حتی توضیح بزارین.مثلا تو توضیحاتش بنویسید made by folani یا madcraft.ir یا هرچیز دیگه.حالا فرمولش:

{display:{Name:"esm Item",Lore:["tozih"]}}

اول که مینویسین display.بعد جلو Name اسم آیتم(اسمی که شما براش انتخاب کردین.مثلا mad sword) رو مینویسین.البته باید تو دابل پوتیشن (“) باشه.به جا tozih هم توضیح رو مینویسین.بازم باید تو دابل پوتیشن باشه.حالا مثال

مثال1:شمشیر الماسی که اسمش مد کرافت باشه و تو توضیحاتش بگه made by mehdy

/give @p diamond_sword 1 0 {display:{Name:"madcraft",Lore:["made by mehdy"]}}

اسلش اوله.اول که کامند give رو وارد کردیم.بعد گفتیم یه چیزی بده به من.بعد گفتیم اون چیز شمشیر الماسی باشه.بعد تعداد رو مشخص کردیم که یدونه است.بعد گفتیم استفاده نشده باشه.خالا جای مهم.اول که یه NBT انتخاب کرده که همون display هست.بعد جلوی Name اسم شمشیر رو گفتیم که همون madcraft هست.جلوی Lore هم توضیحاتش که گفته made by mehdy.دوباره میگم اسم و توضیحات باید و باید تو دابل پوتیشن باشن.

مثال 2:یه شمشیر چوبی بتون بده به اسم legendry sword که تو توضیحاتش نوشته باشه madcraft.ir و با یه ضربه حتی اندردراگون رو هم بکشه و حریف پرت کنه اون دور دورا.هیچوقت هم نشکنه.(یکم سخت شد.البته سخت نه.پیچیده.)

/give @p wooden_sword 1 0 {Unbreakable:1,ench:[{id:16,lvl:32767},{id:19,lvl:1000}],display:{Name:"legendry sword",Lore:["madcraft.ir"]}}

اسلش اوله.خب.یاخدا.شروع میکنیم.کامند give رو انتخاب کردیم.بعد گفتیم یه چیزی بده به من.بعد گفتیم اون چیز شمشیر چوبیه.بعد گفتیم یدونه ازش بده بهم.بعد گفتیم استفاده نشده باشه که مهم نیست چون شمشیر نشکن است.حالا جای مهم.گفتیم Unbreakable:1 یعنی نشکن بودن فعال باشه.تو قسمت ench:[{id:16,lvl:32767},{id:19,lvl:1000}] هم گفتیم که انچنت شدست.انچنت هاشم یکی قدرت ضربه (16) با لول 32767 است.اون یکی هم قدرت پرتاب دشمن با لول 1000 هست.و اما جای مهم تر.گفتیم display:{Name:”legendry sword”,Lore:[“madcraft.ir”]} این اول NBT گفته که همون display هست.بعد اسم شمشیر رو با Name انتخاب کرده که همون legendry sword هستکه باید تو دابل پوتیشن باشه.بعد تو Lore هم توضیحات رو داده که آدرس سایته.

خب تا اینجا به NBT های پرکاربرد و تقریبا ساده آشنا شدین.اما یه NBT هست که الان میخوام بگم که خیلی به درد میخوره ولی یکم سخته.حتما تو سایت دیدین یه کامند میزنی یه کفش بت میده سرعتت انقد زیاد میشه که نمیدونی چی میکنی.یا یه زره که جونتو زیاد میکنه.اینا همه با یه NBT هستند به نام AttributeModifiers .همین اسمش به تنهایی پدر آدمو در میاره چه برسه به فرمولش.حالا فرمولش:

AttributeModifiers:[{AttributeName:"kari ke gharare anjam beshe",Name:"dobare hamoon kari ke gharare anjam beshe",Amount:meghdar kar,UUIDMost:1,UUIDLeast:1}]

یاخدا.اول که مینویسین AttributeModifiers     .بعد اون علامتا رو میزارین.جلو AttributeName اسم اون اتفاقی که قراره بیوفته رو مینویسین.مثلا برا سرعت باید بنویسید generic.movementSpeed   .اینارو هم بتون میگم.خب تو Name هم همون اتفاق رو مینویسین.جلو Amount هم مقدار اون اتفاق.مثلا سرعتتون چقد زیاد شه.راستی واسه سرعت عدد زیادی نزنین چون حتی 1 هم خیلی سریعتون میکنه.خب اون UUIDMost:1,UUIDLeast:1 رو هم دست نزنین ، فقط بنویسین.حالا کارایی که میشه باش کرد.(بعضیا رو میگم)

افزایش حداکثر جونتون با:generic.maxHealth

نکته همیشه حروف بزرگ و کوچیک مهم اند.

افزایش سرعت همون طور که گفتم با :generic.movementSpeed

نکته:مقدار اینو زیاد نزنین چون حتی 1 هم خیلیه.

افزایش دیمیج با: generic.attackDamage

افزایش آرمور (کم کردن دیمیج حریف) با :generic.armor

خب نوبت میرسه به مثال ها

مثال 1:یه ایترا بتون بده که وقتی پوشیدینش یا دستتونه بتون 100 تا جون (50 تا قلب ) بده.

/give @p elytra 1 0 {AttributeModifiers:[{AttributeName:"generic.maxHealth",Name:"generic.maxHealth",Amount:100 ,UUIDMost:1,UUIDLeast:1}]}

اسلش اوله.اول میگه داریم از کامند give استفاده میکنیم.بعد میگه یه چیزی بده به من.بعد میکه الترا باشه.بعد میگه یه الترا بده و بعد میگه استفاده نشده باشه.و حالا اینجا مهمه.اول که گفتیم دار از یه NBT به نام AttributeModifiers استفاده میکنیم.بعد گفتیم اسم کاری که میخوایم باش انجام بدیم افزایش حداکثر جونمونه.دوباره تکرار شده(که باید بشه.)بعدجلوی Amount مقدار جون اضافه رو گفتیم.بعدشم که UUIDMost:1,UUIDLeast:1 که همیشه همینه.

مثال 2:میخوام هرچی گفتم رو ترکیب کنم.یه کلنک الماسی بده بمون که نشکن باشه.حداکثر سرعت ممکن رو داشته باشه و وقتی یه ore رو شکوندیم بمون چنتا ازشوبده.دیمیجش 1000000 باشه.وقتی دستتونه سرعتتون دوبرابر شه(سرعت پلی 0.1 هست).و 100 قلب (200 جون) بتون بده.اسمشم legendry pickaxe باشه و توضیحاتش گقته باشه madcraft.ir .و حالا جواب:

/give @p diamond_pickaxe 1 0 {Unbreakable:1,ench:[{id:32,lvl:32767},{id:35,lvl:100}],display:{Name:"legendry pickaxe",Lore:["madcraft.ir"]},AttributeModifiers:[{AttributeName:"generic.maxHealth",Name:"generic.maxHealth",Amount:200,UUIDMost:1,UUIDLeast:1},{AttributeName:"generic.movementSpeed",Name:"generic.movementSpeed",Amount:0.1,UUIDMost:1,UUIDLeast:1},{AttributeName:"generic.attackDamage",Name:"generic.attackDamage",Amount:1000000,UUIDMost:1,UUIDLeast:1}]}

اسلش اوله.خب.اول که کامند give رو معرفی کردیم.بعد گفتیم یه چیزی بده به من.بعد گفتیم اون چیز کلنگ الماسی باشه.تعدادش 1 باشه و استفاده نشده باشه.حالا NBT ها.Unbreakable:1 همون نشکن بودنه که وقتی میگیم 1 یعنی فعال.ench هم یه NBT هست برای انچنت کردن وسیله ها.اولین انچنتی که روی وسیلمون اعمال کردیم {id:32,lvl:32767} هست.32 آی دیِ انچنت سرعته و لولش هم گزاشتیم 32767 .این سرعشو اینقد زیاد میکنه که حتی سرعت شکوندن آبسیدان با این ، از سرعت شکوندن تو کریتیو بیشتره.البته فقط سرعت رو برای چیز های سفت مثل سنگ،آهن،الماس و … زیاد میکنه که اینا چیزایی هستن که کلنگ اونارو سریع میشکونه.پس نتیجه میگیریم اگه این انچنت رو روی تبر بزنیم سرعت شکوندن چیز های چوبی رو زیاد میکنه.انچنت دوم هم که نوشته {id:35,lvl:100} هم شانس اینکه تعداد بیشتری از چیزی که میشکنیم رو بگیریم رو بمون میده.35 id انچنت شانسه و لولش هم 100 گزاشتیم.این 100 رو زیاد نکنید چون اگه چیزی بشکونین انقد از اون چیز بتون میده که بازی هنگ میکنه.بعد رسیدیم به NBT بعدی که همون display هست.خود display دو قسمت شده.”Name:”legendry pickaxe که اسم کلنگمونه.یه قسمت دیگه هم که Lore:[madcraft.ir] هست که یه توضیح برای کلنگ مینویسیم که اینجا madcraft.ir هست.حالا اینجا یه AttributeModifiers نوشتیم که همون NBT ما هست.خودش شده سه قسمت.تو قسمت اول AttributeName و Name رو گفته generic.maxHealth    .این حداکثر جونتون رو بالا میبره.تو قسمت Amount هم مقدار جونی که میخواین رو بش میگین که اینجا 200 هست.بعد هم که UUIDMost:1,UUIDLeast:1 رو نوشتیم که کاریش نداشته باشین.تو AttributeName و Name بعدی هم نوشتیم generic.movementSpeed که باعث افزایش سرعت میشه.یعنی وقتی کلنگ تو دستمونه سرعتمون زیاد میشه که مقدار این افزایش رو تو قسمت Amount گفتیم.یعنی همون 0.1 .اینم بگم که سرعت شما در حالت عادی 0.1 و در حالت دویدن 0.15 هست.وقتی این کلنگ رو بگیرین دستتون 0.1 میاد روش.درضمن بالاترین سرعت توی ماین کرافت مال اندردراگون،گاست،وکس و یه چنتا موب دیگست که 0.7 هست.UUIDMost:1,UUIDLeast:1 هم که ثابته.تو قسمت بعدی هم AttributeName و Name رو گزاشتیم generic.attackDamage     .همون طور که توضیح دادم این قدرت ضربتون رو زیاد میکنه.با این میتونین حتی قدرت یه سیب رو طوری کنین که اندر دراگون رو  با یه ضربه بکشه.شاید بعضیا بگن فرقش با انچنت قدرت چیه؟الان میگم.وقتی انچنت قدرت رو رو یه چیزی میزنین قدرت ضربه اون چیزه میره بالا.یعنی وقتی دستتون نیست قدرتتون زیاد نمیشه.اما وقتی اینطوری بش قدرت بدین اگه تو دست چپتون باشه یا بپوشینش،بازم قدرتتون زیاد میشه.حالا با این کلنگ میتونین با دست خالی پدر هر حریفیرو در بیارین.

این مطلبم تموم شد.امیدوارم مفید و قابل فهم بوده باشه.راستی من از ورژن 1.11 استفاده کردم ولی به احتمال زیاد کد ها رو بقیه ورژناهم کار میکنن.درضمن به جز اینها NBT های زیاد دیگه ای هم هست که برای کامند های مختلف استفاده میشن.میتونین تو اینترنت سرچ کنین راحت پیدا میشه.البته تو سایتا خارجی.
تعداد واژه ها(چون خیلی زیاد شد میگم):2415

arm4n : قابل توجه به دوستانی که در نظرات مینویسن که مدکرغت مثل قبل نیست بخاطر عوض شدن ادمینش و کیفیت مطالب کم شده : من (arm4n مدیر بخش مطالب) فقط تایید میکنم و مطالبی تایید میشن که براشون زحمت کشیدن کاربران الان این مطلب یکی از با کیفیت ترین مطالب هست و اینو من ننوشتم شما کاربران عزیز نوشتید پس این من نیستم که باعث پیشرفت میشم من فقط وظیفمو انجام میدم این شما کاربرانید که میتونین با نوشتن مطلب عالی مانند همین مطلب سایت رو با کیفیت کنین / ممنون که همراهمون هستید و بخاطر قعطی سایت معذرت میخوایم  … خدانگهدار

185+
اگه شما هم دوست دارین اطلاعاتتون رو با بقیه به اشتراک بذارید و نویسنده سایت بشین اینجا کلیک کنید

پاسخی بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

کپچا *

برای مشاهده یکی از پست های سایت
بصورت تصادفی اینجا کلیک کنید.