การใช้งาน Map Zone จำกัดห้ามใช้ สกิลหรือไอเทมในพื้นที่ที่กำหนด

การใช้งาน Map Zone




ขั้นตอนการใช้งาน Map Zone ส่วนที่ #1

         - ให้ทำการเปิดไฟล์ db\pre-re\map_zone_db.conf และสำหรับ Renewal เท่านั้นที่ db\re\map_zone_db.conf
         - ในที่นี้เราจะยกตัวอย่างด้วยเซิฟเวอร์ทั่วไปนะครับ ตามด้านล่างเมื่อเปิดไฟล์จะพบข้อมูล Zone ต่างๆ มากมายเลย
         - แต่ให้เราสังเกตุเฉพาะ ส่วนของ Zone เท่านั้น(ให้ค้นหาคำตามด้านล่างนะครับ) นั่นก็คือ
  • name: "All" ตรงนี้คือเมื่อปรับแล้วจะมีผลทุกแผนที่
  • name: "Normal" มีผลเฉพาะแผนที่ทั่วๆ ไป
  • name: "PvP" มีผลเฉพาะแผนที่ PvP
  • name: "PK Mode"  มีผลเฉพาะแผนที่ Pk Mode
  • name: "GvG" มีผลเฉพาะแผนที่ GvG
  • name: "Battlegrounds" มีผลเฉพาะแผนที่ Battlegrounds
  • name: "Aldebaran Turbo Track"  มีผลเฉพาะแผนที่ Aldebaran Turbo Track
  • name: "Jail"  มีผลเฉพาะแผนที่ คุก
  • name: "Izlude Battle Arena" มีผลเฉพาะแผนที่ Izlude Battle Arena
  • name: "GvG2" มีผลเฉพาะแผนที่ GvG2
  • name: "Sealed Shrine" มีผลเฉพาะแผนที่ Sealed Shrine
  • name: "Memorial Dungeon" มีผลเฉพาะแผนที่ Memorial Dungeon
  • name: "Towns"  มีผลเฉพาะแผนที่ เมือง

         ทีนี้เราจะมายกตัวอย่างการห้ามใช้ไอเท็ม Red Potion(รหัสไอเท็ม 501) ห้ามใช้สกิล Teleport และห้ามใช้ @load ในพื้นที่ PvP กันว่าต้องทำอย่างไร
         
         - เริ่มทำการค้นหาเลย name: "PvP" ก็จะพบข้อมูลตามลักษณะด้านล่างนี้
{
 /* PvP zone is applied to all maps with a pvp mapflag */
 name: "PvP" /* changing this name requires MAP_ZONE_PVP_NAME to also be changed in src/map/map.h file */
 
 disabled_skills: {
  BS_GREED: "PLAYER"
  CG_HERMODE: "PLAYER"
 }
 
 disabled_items: {
  Greed_Scroll: true
 }
 
 mapflags: (
  "nocashshop",
 )
 
},
** สังเกตุที่ด้านบน จะมีชื่อ Zone อยู่นั่นก็คือ name: "PvP" /* changing this name requires MAP_ZONE_PVP_NAME to also be changed in src/map/map.h file */ แบบนี้ นั่นก็คือ Zone PvP นี่แหละ

         - ซึ่งจะเห็นส่วนต่อๆ มาก็คือ disabled_skills, disabled_items เดี๋ยวผมจะอธิบายต่อด้านล่างนะครับ
  • disabled_skills คือกำหนดสกิลที่ห้ามใช้งาน  (หาชื่อสกิลได้จาก db/pre-re/skill_db.txt หรือ db/re/skill_db.txt )
  • disabled_items คือกำหนดไอเท็มที่ห้ามใช้งาน (หาชื่อไอเท็มได้จาก itemdb)
  • mapflags คือการหนดให้แผนที่นี้เป็น mapflag ใดบ้าง
  • disabled_commands กำหนดห้ามใช้คำสั่งคอมมานด์
  • skill_damage_cap กำหนดความแรงสูงสุดของสกิล

**หากเราทำการแก้ไขตามโจทย์ที่ให้มาก็คือ ห้ามใช้ไอเท็ม Red Potion(รหัสไอเท็ม 501) ห้ามใช้สกิล Teleport และห้ามใช้ @load ก็จะได้ผลลัพธ์ตามนี้
{
  /* PvP zone is applied to all maps with a pvp mapflag */
 name: "PvP" /* changing this name requires MAP_ZONE_PVP_NAME to also be changed in src/map/map.h file */
 
 disabled_skills: {
  BS_GREED: "PLAYER"
  CG_HERMODE: "PLAYER"
                // เพิ่มส่วนห้ามใช้สกิล Teleport
  AL_TELEPORT: "PLAYER"
 }
 
 disabled_items: {
  Greed_Scroll: true
                // ส่วนห้ามใช้ Red Potion
                Red_Potion: true
 }
    
        // และเพิ่มส่วนที่ห้ามใช้คำสั่งลงไป load คือคำสั่ง และ 100 คือระดับที่สามารถให้ GM ใช้งานได้ เช่นหากใส่ 70 GM ระดับ 71 ขึ้นไปก็จะ bypass ให้ใช้คำสั่งในแผนที่นี้ได้
 disabled_commands: {
  load: 100
 }
 
 mapflags: (
  "nocashshop",
 )
 
},
         - สังเกตุสกิลที่เพิ่มเข้ามาใน disabled_skills ก็คือ AL_TELEPORT: "PLAYER" ก็คือห้ามใช้สกิล Teloport
         - และ ในส่วน disabled_items Red_Potion: true ก็คือห้ามใช้ Red Potion
         - และส่วนที่เพิ่มมาเยอะที่สุดก็คือ disabled_commands ก็จะมีปีกกาเพิ่มขึ้นมาด้วย ตามตัวอย่างเลยนะครับ

** เรียบร้อยแล้วครับ สำหรับการเพิ่มกำหนดห้ามใช้อะไรต่างๆ ใน Mapzone



ขั้นตอนการใช้งาน Map Zone ส่วนที่ #2

         - ในส่วนนี้ npc\mapflag\zone.txt ก็ให้เพิ่มแผนที่ลงไปตามชื่อเลยนะครับ เช่น name: "PvP" ก็คือโซน PvP
         - ตามตัวอย่างเราจะเพิ่มแผนที่ Amatsu Field 01 ชื่อแผนที่ก็คือ ama_fild01
umbala mapflag zone Towns
veins mapflag zone Towns
xmas mapflag zone Towns
yuno mapflag zone Towns

// เพิ่มแผนที่ 
ama_fild01 mapflag zone PvP
         - หลังจากนั้นทำการกด @reloadscript หรือทำการรันเซิฟใหม่ เพื่อให้ระบบโซนทำงานได้เลยครับ


** เสร็จเรียบร้อยแล้ว **
ไม่มีความคิดเห็น

ไม่มีความคิดเห็น :

แสดงความคิดเห็น