How to Add a BCNM
In this page we will learn how to add BCNMs. Why? Well you should have thought about that before coming here. WORK IN PROGRESS
Adding the BCNM to the list
To start off, navigate to your dsp folder and then to /scripts/globals/ and open bcnm.lua
Inside you'll see something like this:
itemid_bcnmid_map = { 6,{0,0},--Bearclaw_Pinnacle 8,{0,0},--Boneyard_Gully 10,{0,0},--The_Shrouded_Maw 13,{0,0},--Mine_Shaft_2716 17,{0,0},--spire of holla 19,{0,0},--spire of dem 21,{0,0},--spire of mea
Unless you're adding a BCNM that requires an item trade, the above will be of no use. You should scroll down to this instead:
bcnmid_param_map = {6,{640,0}, 8,{672,0}, 10,{704,0,706,2}, 13,{736,0}, 17,{768,0}, 19,{800,0}, 21,{832,0}, 23,{864,0},
This may seem confusing at first glance but it's not! Here's a breakdown of it:
bcnmid_param_map = { 6,{640,0},
The first number (in our case 6) is the ZoneID. The first pair of numbers after the ZoneID are the bcnmid and paramid (which must always be in pairs).
6, <- Zone ID {640 <- bcnmid , 0 <- paramid }
The bcnmid can be found in the bcnm_info sql file / table.
The paramid can usually be found commented in the BCNM zone's Burning_Circle.lua file e.g.
----------------------------------- -- Area: Balga's Dais -- NPC: Burning Circle -- Balga's Dais Burning Circle -- @pos 299 -123 345 146 ------------------------------------- package.loaded["scripts/zones/Balgas_Dais/TextIDs"] = nil; package.loaded["scripts/globals/bcnm"] = nil; ------------------------------------- ........................ ........................ ---- 0: Rank 2 Final Mission for Bastok "The Emissary" and Sandy "Journey Abroad" <--- This line <--- ---- 1: Steamed Sprouts (BCNM 40, Star Orb) ---- 2: Divine Punishers (BCNM 60, Moon Orb) ---- 3: Saintly Invitation (Windurst mission 6-2) ---- 4: Treasure and Tribulations (BCNM 50, Comet Orb)
In this case, if the BCNM we were adding was for Rank 2 Final Mission in Balga's Dais, we could use the information from bcnm_info table here:
[bcnmid | zoneId | name ] [ 96 | 146 | rank_2_mission ]
In bcnm.lua with 96 being bcnmid and 0 being the paramid.
bcnm_param_map = { 146,{96,0}, }
IMPORTANT: You do not need to create another line for an existing zone's bcnm, simply add the bcnmid and paramid at the end of the zone's array (don't include the -->'s, they're there simply to make things easier to understand)
bcnm_param_map = { 146,{bcnmid --> 96, paramid --> 0, bcnmid --> 99, paramid --> 3}, }