/////////////////////////////////////////////////////////////////////////////////////////////////////// // // Welcome to your first Cloud Script revision! // // Cloud Script runs in the PlayFab cloud and has full access to the PlayFab Game Server API // (https://api.playfab.com/Documentation/Server), and it runs in the context of a securely // authenticated player, so you can use it to implement logic for your game that is safe from // client-side exploits. // // Cloud Script functions can also make web requests to external HTTP // endpoints, such as a database or private API for your title, which makes them a flexible // way to integrate with your existing backend systems. // // There are several different options for calling Cloud Script functions: // // 1) Your game client calls them directly using the "ExecuteCloudScript" API, // passing in the function name and arguments in the request and receiving the // function return result in the response. // (https://api.playfab.com/Documentation/Client/method/ExecuteCloudScript) // // 2) You create PlayStream event actions that call them when a particular // event occurs, passing in the event and associated player profile data. // (https://api.playfab.com/playstream/docs) // // 3) For titles using the Photon Add-on (https://playfab.com/marketplace/photon/), // Photon room events trigger webhooks which call corresponding Cloud Script functions. // // The following examples demonstrate all three options. // /////////////////////////////////////////////////////////////////////////////////////////////////////// handlers.aaTest = function(args) { log.info("Lv. " + args.Lv + ", Grade : " + GetRandomGachaGrade(args.Lv)); //var now = new Date(); //log.info(now.getFullYear()); //log.info(now.getMonth()); //log.info(now.getDate()); //var curTime = new Date(); //var t1 = new Date(curTime.setHours(curTime.getHours() + 1)); //log.info(t1); //var t2 = new Date(t1.setDate(t1.getDate() + 1)); //log.info(t2); //server.UpdatePlayerStatistics({PlayFabId: currentPlayerId, Statistics : [ //{ // "StatisticName": "PetBattle", // "Value": 1000 //} //]}); /* // https://learn.microsoft.com/en-us/rest/api/playfab/server/account-management/get-player-profile?view=playfab-rest#playerprofileviewconstraints var playerprofile = server.GetPlayerCombinedInfo({ PlayFabId: currentPlayerId, "InfoRequestParameters": { "GetPlayerProfile": true, "ProfileConstraints": { "ShowTotalValueToDateInUsd": true, "ShowDisplayName": true, //"ShowStatistics": true, // 순위표 (레거시) //"ShowLinkedAccounts": true, // 연결된 계정 (커스텀, 구글, 애플 등) } } }); log.info(playerprofile); if(!CheckNullOrEmpty(playerprofile.InfoResultPayload.PlayerProfile.TotalValueToDateInUSD)) { log.info(playerprofile.InfoResultPayload.PlayerProfile.TotalValueToDateInUSD); var price = playerprofile.InfoResultPayload.PlayerProfile.TotalValueToDateInUSD / 100; log.info(parseInt(price * 50)); } else log.info('no cash buy'); */ // 타이틀 Id 찾는 법 // currentPlayerId == master Id // playerprofile.TitlePlayerAccounts[currentPlayerId].Id == title Id (★) //var playerprofile = entity.GetTitlePlayersFromMasterPlayerAccountIds({ MasterPlayerAccountIds: [currentPlayerId]}); //var titleId = playerprofile.TitlePlayerAccounts[currentPlayerId].Id; //log.info("titleId : " + titleId); } // 에러 정리 : 0 정상, 1 채팅 금지 유저, 2 서버 점검, 3 잘못된 우편을 // -1 중복 로그인, -2 금지 유저 function Get_Error(readonlydata, token) { const PassIDs = [ "20037ADFE4BC365B", "24595CBA317234B8" ]; if (PassIDs.includes(currentPlayerId)) { log.info("Pass by PassIDs."); return 0; // 지정된 아이디면 그냥 통과 } if (readonlydata.Data.CurToken.Value != token) return -1; /* else if (!CheckNullOrEmpty(uidata.BanUser)) return -2; else if (!CheckNullOrEmpty(uidata.BanChat)) return 1; */ else return 0; } handlers.Send_Mail = function(args) { Add_Mail(args); } function Add_Mail(args) { var makemail = {}; makemail.ItemID = args.ItemID; makemail.Amount = args.Amount; makemail.Msg = args.Msg; var day = CheckNullOrEmpty(args.Day) ? 3 : args.Day; var dt = Get_CurKoreaTime(); makemail.RemainTime = new Date(dt.setDate(dt.getDate() + day)); var readonlydata = Get_UserReadOnlyData(); var mailjson = []; if (!CheckNullOrEmpty(readonlydata.Data.Mail)) mailjson = JSON.parse(readonlydata.Data.Mail.Value); mailjson.push(makemail); // 시간 지난 메일 확인 후 삭제 for(var i in mailjson) { var mailtime = new Date(mailjson[i].RemainTime); var nowtime = Get_CurKoreaTime(); if(mailtime - nowtime < 0) delete mailjson[i]; } mailjson = mailjson.filter(function(x) { return x !== null }); // null 모두 지우기 Set_MailData(mailjson); return { result : mailjson }; } handlers.Get_UserInfo = function (args) { var readonlydata = Get_UserReadOnlyData(); return Get_Return(Get_Error(readonlydata, args.Token), { GetUserReadOnlyData: readonlydata.Data }); } handlers.Get_OtherUserInfo = function (args) { var urod = server.GetUserReadOnlyData({ PlayFabId: args.ID }).Data; return { error: Get_Error(args.Token), GetUserReadOnlyData: urod }; } handlers.ServerSave_LoginToken = function(args) { server.UpdateUserReadOnlyData({ PlayFabId: currentPlayerId, Permission: "Public", Data: {"CurToken": args.Token} }); //server.UpdateUserInternalData({ PlayFabId: currentPlayerId, Permission: "Public", Data: {"CurToken": args.Token } }); } handlers.ServerSave_AllData = function(args) { var error = Get_Error(Get_UserReadOnlyData(), args.Token); if (error < 0) return Get_Return(error); server.UpdateUserReadOnlyData({ PlayFabId: currentPlayerId, Permission: "Public", Data: {"UserInfo": JSON.stringify(args.AllData)} }); return Get_Return(error); } /////////////////////////////////// 서버 처리 // table 변수는 기본적으로 미션 테이블 function Get_UserReadOnlyData() { return server.GetUserReadOnlyData({ PlayFabId: currentPlayerId }); } function Get_JsonUserData(readonlydata) { return JSON.parse(readonlydata.Data.UserInfo.Value); } function Set_JsonUserData(urod) { urod.LastTime = Get_CurKoreaTime(); server.UpdateUserReadOnlyData({ PlayFabId: currentPlayerId, Permission: "Public", Data: {"UserInfo": JSON.stringify(urod)} }); } function Set_MailData(mailjson) { server.UpdateUserReadOnlyData({ PlayFabId: currentPlayerId, Data: {"Mail": JSON.stringify(mailjson)} }); } function Get_Return(errorval, add) { var rtn = { error: errorval, time: Get_CurKoreaTime() }; if (add) { if (Array.isArray(add)) rtn["results"] = add; else if (typeof add === 'object') { // 단일 객체인 경우 for (var key in add) { if (add.hasOwnProperty(key)) rtn[key] = add[key]; } } } return rtn; /* Get_Return(0, { gold: 1000, name: "player1" }); // 결과: { error: 0, time: "...", gold: 1000, name: "player1" } Get_Return(1, [ { gold: 1000 }, { name: "player1" }, { time: "커스텀" } ]); // 결과: { error: 1, time: "커스텀", gold: 1000, name: "player1" } */ } function Add_Item(table, itemtable, urod, itemid, amount, isCheat) { var itemdata = itemtable.find(f => f.n_ItemID == itemid); if (!itemdata) { log.error("Add_Item - Invalid item ID: " + itemid); return; } Add_MissionCount(table, urod, "TAKE_GOODS", itemid, amount, false); Add_MissionCount(table, urod, "TAKE_GOODS_LIMIT", itemid, amount, false); Add_MissionCount(table, urod, "TAKE_GOODS_ACC", itemid, amount, false); switch (itemdata.e_ItemType) { default: if (!urod.Item[itemid]) urod.Item[itemid] = [0, 0, 0]; urod.Item[itemid][0] += amount; if (!isCheat) urod.Item[itemid][1] += amount; // 총 획득량 break; case "Weapon": case "Armor": case "Helmet": case "Extra": case "Necklace": case "Ring": if (!urod.Equipment[itemid]) urod.Equipment[itemid] = [0, 0, 0]; urod.Equipment[itemid][0] += amount; Add_Collection(urod, itemid, amount); break; case "Skill": if (!urod.Skill[itemid]) urod.Skill[itemid] = [amount - 1,1,0]; // 레벨 증가 else urod.Skill[itemid][0] += amount; break; case "PC": if (!urod.PC.Obtain.includes(itemid)) urod.PC.Obtain.push(itemid); break; case "Pet": if (!urod.Pet[itemid]) urod.Pet[itemid] = [0, 1]; // [레벨, 획득 수] urod.Pet[itemid][0] += amount; break; case "Enchant": if (!urod.Enchant[itemid]) urod.Enchant[itemid] = [0, 0, 0, 0]; urod.Enchant[itemid][0] += amount; urod.Enchant[itemid][2] += amount; break; case "Relic": if (!urod.Relic[itemid]) urod.Relic[itemid] = [0, 0, 0]; urod.Relic[itemid][0] += amount; break; } } function Use_Item(table, urod, itemid, amount) { Add_MissionCount(table, urod, "CONSUME_GOODS", itemid, amount, false); Add_MissionCount(table, urod, "CONSUME_GOODS_ACC", itemid, amount, false); if (urod.Item[itemid]) { if (urod.Item[itemid][0] >= amount) { urod.Item[itemid][0] -= amount; urod.Item[itemid][2] += amount; // 총 사용량 return true; } } else if (urod.Equipment[itemid]) { //log.info('장비 사용 ' + itemid + ' ' + urod.Equipment[itemid][0]); if (urod.Equipment[itemid][0] >= amount) { urod.Equipment[itemid][0] -= amount; //log.info('장비 사용 ' + itemid + ' ' + urod.Equipment[itemid][0]); return true; } } else if (urod.Skill[itemid]) { if (urod.Skill[itemid][0] >= amount) { urod.Skill[itemid][0] -= amount; return true; } } else if (urod.Pet[itemid]) { if (urod.Pet[itemid][0] >= amount) { urod.Pet[itemid][0] -= amount; return true; } } else if (urod.Enchant[itemid]) { if (urod.Enchant[itemid][0] >= amount) { urod.Enchant[itemid][0] -= amount; urod.Enchant[itemid][3] += amount; return true; } } else if (urod.Relic[itemid]) { if (urod.Relic[itemid][0] >= amount) { urod.Relic[itemid][0] -= amount; return true; } } return false; } function Get_ItemAmount(urod, itemid) { if (urod.Item?.[itemid]) return urod.Item[itemid][0]; if (urod.Equipment?.[itemid]) return urod.Equipment[itemid][0]; if (urod.Skill?.[itemid]) return urod.Skill[itemid][0]; if (urod.Pet?.[itemid]) return urod.Pet[itemid][0]; if (urod.Enchant?.[itemid]) return urod.Enchant[itemid][0]; if (urod.Relic?.[itemid]) return urod.Relic[itemid][0]; return 0; } function Check_ItemAmount(urod, itemid, amount) { //log.info("Check_ItemAmount : " + itemid + ", " + amount); var obtainAmount = Get_ItemAmount(urod, itemid); //log.info("obtainAmount : " + obtainAmount); return obtainAmount >= amount; } function IsObtainItem(urod, itemid) { if (urod.Item?.[itemid]) return true; if (urod.Equipment?.[itemid]) return true; if (urod.Skill?.[itemid]) return true; if (urod.Pet?.[itemid]) return true; if (urod.Enchant?.[itemid]) return true; if (urod.Relic?.[itemid]) return true; return urod.PC.Obtain.map(id => parseInt(id)).includes(itemid); } function Add_MissionCount(table, urod, purpose, conditionvalue, count, setValue) { if (count <= 0) return; //var table = Get_MissionTable(); // 전체 미션 테이블을 외부에서 받는 걸로 변경 (1번만 호출하기 위함) var matchingMissions = []; // 조건에 맞는 미션만 추림 for (var i = 0; i < table.length; i++) { if (table[i].e_MissionConditionType == purpose) { matchingMissions.push(table[i]); //log.info(purpose + " : " + table[i].e_MissionConditionType + ", " + table[i].n_MissionGroupId + ", " + table[i].n_MissionIndex); } } // 조건에 맞는 미션들만 처리 for (var i = 0; i < matchingMissions.length; i++) { var mission = matchingMissions[i]; // 조건 값 확인 //log.info("typeof n_MissionConditionValue: " + typeof mission.n_MissionConditionValue); //log.info("typeof conditionvalue: " + typeof conditionvalue); //log.info("n_MissionConditionValue: " + mission.n_MissionConditionValue); //log.info("conditionvalue: " + conditionvalue); //log.info(mission.e_MissionConditionType + " " + mission.n_MissionGroupId + " " + mission.n_MissionIndex); if (mission.n_MissionConditionValue == 0 || conditionvalue == mission.n_MissionConditionValue) { var key1 = mission.n_MissionGroupId; var key2 = mission.n_MissionIndex; if (!urod.Mission[key1]) urod.Mission[key1] = {}; if (!urod.Mission[key1][key2]) urod.Mission[key1][key2] = [0, 0]; if (setValue) urod.Mission[key1][key2][1] = count; else urod.Mission[key1][key2][1] += count; } } // 가이드 퀘스트 체크 var guideData = table.find(f=>f.n_MissionGroupId == 0 && f.n_MissionIndex == urod.Common[10]); if (guideData && guideData.e_MissionConditionType == purpose) urod.Common[11] += count; } function Add_Collection(urod, id, count) { if (!urod.Collection[id]) urod.Collection[id] = 0; urod.Collection[id] += count; } function Add_MobCollection(urod, id, count) { if (!urod.MobKill[id]) urod.MobKill[id] = 0; urod.MobKill[id] += count; } function Get_Exp(lv) { var base = (lv * 10) + 21 + (lv * 50); var exp = Math.pow(base, 1.05 + Math.sqrt(lv * 0.0000000001)); return Math.max(Math.floor(exp), 0); } handlers.Save_CheatItem = function(args) { var urod = Get_JsonUserData(Get_UserReadOnlyData()); Add_Item(Get_MissionTable(), Get_ItemTable(), urod, args.ID, args.Amount, true); Set_JsonUserData(urod); } handlers.Get_MailList = function(args) { var readonlydata = Get_UserReadOnlyData(); var mailList = []; if (readonlydata.Data.Mail && readonlydata.Data.Mail.Value) { try { mailList = JSON.parse(readonlydata.Data.Mail.Value); } catch (e) { log.error("Mail JSON Parse Error: " + e); mailList = []; // 파싱 실패시 빈 목록 반환 } } return Get_Return(Get_Error(readonlydata, args.Token), { Mail: mailList }); } handlers.Get_MailReward = function(args) { var readonlydata = Get_UserReadOnlyData(); var error = Get_Error(readonlydata, args.Token); if (error < 0) return Get_Return(error); if (!CheckNullOrEmpty(readonlydata.Data.Mail)) { var table = Get_MissionTable(); var itemtable = Get_ItemTable(); var urod = Get_JsonUserData(readonlydata); var mailjson = JSON.parse(readonlydata.Data.Mail.Value); var existmail = false; var getdate = new Date(args.RemainTime); for (var i in mailjson) { var maildate = new Date(mailjson[i].RemainTime); if (maildate.getTime() === getdate.getTime()) { existmail = true; Add_Item(table, itemtable, urod, mailjson[i].ItemID, mailjson[i].Amount); delete mailjson[i]; break; } } mailjson = mailjson.filter(function(x) { return x !== null }); // null 모두 지우기 if (existmail) { Set_MailData(mailjson); Set_JsonUserData(urod); return Get_Return(error, { Mail: mailjson } ); } else return Get_Return(3); } else return Get_Return(3); } handlers.Get_AllMail = function(args) { var readonlydata = Get_UserReadOnlyData(); var error = Get_Error(readonlydata, args.Token); if (error < 0) return Get_Return(error); if (!CheckNullOrEmpty(readonlydata.Data.Mail)) { var table = Get_MissionTable(); var itemtable = Get_ItemTable(); var urod = Get_JsonUserData(readonlydata); var mailjson = JSON.parse(readonlydata.Data.Mail.Value); for (var i in mailjson) Add_Item(table, itemtable, urod, mailjson[i].ItemID, mailjson[i].Amount); Set_MailData([]); Set_JsonUserData(urod); return Get_Return(error, { Mail: mailjson }); } else return Get_Return(3); } handlers.Save_StageResult = function(args) { var readonlydata = Get_UserReadOnlyData(); var error = Get_Error(readonlydata, args.Token); if (error < 0) return Get_Return(error); var urod = Get_JsonUserData(readonlydata); var table = Get_MissionTable(); var itemtable = Get_ItemTable(); // 경험치 처리 urod.PC.Exp += args.Exp; while (urod.PC.Exp >= Get_Exp(urod.PC.Lv + 1)) { urod.PC.Lv++; } // 아이템 처리 (args.Item은 JS object 형태로 전달됨) var items = args.Item; // ex: { "1001": 3, "1002": 1 } for (var key in items) { var itemId = key; var itemCount = items[key]; Add_Item(table, itemtable, urod, itemId, itemCount); } // 몬스터 킬 처리 var mobcount = 0; for (var key in args.Mob) { var Id = key; var Count = args.Mob[key]; mobcount += Count; Add_MissionCount(table, urod, "KILL_MONSTER", Id, Count, false); Add_MobCollection(urod, Id, Count); } var elitemobcount = 0; for (var key in args.Elite) { var Id = key; var Count = args.Elite[key]; elitemobcount += Count; Add_MissionCount(table, urod, "KILL_MONSTER", Id, Count, false); Add_MobCollection(urod, Id, Count); } var bossmobcount = 0; for (var key in args.Boss) { var Id = key; var Count = args.Boss[key]; bossmobcount += Count; Add_MissionCount(table, urod, "KILL_MONSTER", Id, Count, false); Add_MobCollection(urod, Id, Count); } Add_MissionCount(table, urod, "KILL_MONSTER_ALL", 0, mobcount + elitemobcount + bossmobcount, false); Add_MissionCount(table, urod, "KILL_MONSTER_ACC", 0, mobcount + elitemobcount + bossmobcount, false); Add_MissionCount(table, urod, "KILL_MONSTER_GRADE", 1, mobcount, false); Add_MissionCount(table, urod, "KILL_MONSTER_GRADE", 2, elitemobcount, false); Add_MissionCount(table, urod, "KILL_MONSTER_GRADE", 3, bossmobcount, false); Add_MissionCount(table, urod, "KILL_MONSTER_GRADE_ACC", 1, mobcount, false); Add_MissionCount(table, urod, "KILL_MONSTER_GRADE_ACC", 2, elitemobcount, false); Add_MissionCount(table, urod, "KILL_MONSTER_GRADE_ACC", 3, bossmobcount, false); Set_JsonUserData(urod); return Get_Return(0); } handlers.Save_PC_Stat = function(args) { var readonlydata = Get_UserReadOnlyData(); var error = Get_Error(readonlydata, args.Token); if (error < 0) return Get_Return(error); if (!args.UsePoint || args.UsePoint.length !== 4) { return Get_Return(2); // invalid input } for (var i = 0; i < 4; i++) { if (args.UsePoint[i] < 0) return Get_Return(3); // no negative values allowed } var urod = Get_JsonUserData(readonlydata); var usedPoint = urod.PC.Stat.reduce((a, b) => a + b, 0); var totalPoint = (urod.PC.Lv - 1) * 5; var remainPoint = totalPoint - usedPoint; var curUsePoint = args.UsePoint.reduce((a, b) => a + b, 0); if (curUsePoint <= remainPoint) { for (var i = 0; i < 4; i++) { urod.PC.Stat[i] += args.UsePoint[i]; } Add_MissionCount(Get_MissionTable(), urod, "HERO_STAT_UPGRADE_ACC", 0, curUsePoint, false); Set_JsonUserData(urod); return Get_Return(0); } else { return Get_Return(1); // not enough points } } handlers.Save_PC_StatInit = function(args) { var readonlydata = Get_UserReadOnlyData(); var error = Get_Error(readonlydata, args.Token); if (error < 0) return Get_Return(error); var urod = Get_JsonUserData(readonlydata); var rtnerror = 2; // 실패 (재화 부족) var useGem = 100; if (urod.Common[8] == 0) { // 최초 무료 urod.Common[8] = 1; rtnerror = 1; useGem = 0; } else { if (Use_Item(Get_MissionTable(), urod, 1, useGem)) rtnerror = 0; } if (rtnerror >= 0 && rtnerror < 2) { for (var i = 0; i < 4; i++) urod.PC.Stat[i] = 0; Set_JsonUserData(urod); } return Get_Return(rtnerror, { gem: useGem }); } handlers.Save_PC_Ability = function(args) { var readonlydata = Get_UserReadOnlyData(); var error = Get_Error(readonlydata, args.Token); if (error < 0) return Get_Return(error); var table = Get_AbilityConfigTable(); var data = table.find(f => f.n_AbilityID == args.AbilityID); if (!data) return Get_Return(3); // 잘못된 특성 ID var urod = Get_JsonUserData(readonlydata); if (data.n_MaxUpgradeLevel <= (urod.Ability[args.AbilityID] || 0)) return Get_Return(1); // 이미 최대 레벨 // 특성 선행 조건 체크 if (data.n_RequireAbility1 > 0) { var requireData = table.find(f => f.n_AbilityID == data.n_RequireAbility1); if (!urod.Ability[data.n_RequireAbility1] || urod.Ability[data.n_RequireAbility1] < requireData.n_MaxUpgradeLevel) return Get_Return(5); // 선행 특성이 최고 레벨이 아님 } if (data.n_RequireAbility2 > 0) { var requireData = table.find(f => f.n_AbilityID == data.n_RequireAbility2); if (!urod.Ability[data.n_RequireAbility2] || urod.Ability[data.n_RequireAbility2] < requireData.n_MaxUpgradeLevel) return Get_Return(5); // 선행 특성이 최고 레벨이 아님 } var global = Get_GlobalValueTable(); var matdata = global.find(f => f.s_ID == "n_AbilityMaterialID"); if (!matdata) return Get_Return(4); // 설정 누락 var table = Get_MissionTable(); var materialId = matdata.n_Value; if (Use_Item(table, urod, materialId, 1)) { // 특성 레벨업 if (!urod.Ability[args.AbilityID]) urod.Ability[args.AbilityID] = 0; ++urod.Ability[args.AbilityID]; // 미션 카운트 Add_MissionCount(table, urod, "HERO_ABILITY_UPGRADE_CLASS_LIMIT", args.nBattleType, 1, false); Add_MissionCount(table, urod, "HERO_ABILITY_UPGRADE_ALL", 0, 1, false); Add_MissionCount(table, urod, "HERO_ABILITY_UPGRADE_ACC", 0, 1, false); Set_JsonUserData(urod); return Get_Return(0); } else return Get_Return(2); // 재료 없음 } handlers.Save_PC_AbilityInit = function(args) { var readonlydata = Get_UserReadOnlyData(); var error = Get_Error(readonlydata, args.Token); if (error < 0) return Get_Return(error); var urod = Get_JsonUserData(readonlydata); var Gem = 100; var itemtable = Get_ItemTable(); var table = Get_MissionTable(); var abilitytable = Get_AbilityConfigTable(); var global = Get_GlobalValueTable(); if (Use_Item(itemtable, urod, 1, Gem)) { var matdata = global.find(f => f.s_ID == "n_AbilityMaterialID"); if (!matdata) return Get_Return(1); // 설정 누락 var materialId = matdata.n_Value; // 특성 초기화 및 재료 환급 var lst = abilitytable.filter(f => f.e_BattleType == args.BattleType); for (var i = 0; i < lst.length; ++i) { var key = lst[i].n_AbilityID; if (urod.Ability[key]) { Add_Item(table, itemtable, urod, materialId, urod.Ability[key]); urod.Ability[key] = 0; } } // 미션 카운트 Add_MissionCount(table, urod, "HERO_ABILITY_RESET_ACC", 0, 1, false); Set_JsonUserData(urod); return Get_Return(0, { gem: Gem }); } else { return Get_Return(2); // 젬 부족 } } handlers.Save_PC_BuyJob = function(args) { var readonlydata = Get_UserReadOnlyData(); var error = Get_Error(readonlydata, args.Token); if (error < 0) return Get_Return(error); var urod = Get_JsonUserData(readonlydata); var global = Get_GlobalValueTable(); var matdata = global.find(f => f.s_ID == "n_JobMaterialID"); if (!matdata) return Get_Return(1); // 설정 누락 var materialId = matdata.n_Value; if (urod.PC.Obtain.includes(args.JobID)) return Get_Return(3); // 가진 직업 var classopentable = Get_ClassOpenTable(); var m_Data = classopentable.find(f=>f.n_ClassID == args.JobID); // linkedId1 확인 const linkedClass1 = parseInt(m_Data.n_linkedClass1); if (linkedClass1 > 0 && !urod.PC.Obtain.map(id => parseInt(id)).includes(linkedClass1)) return Get_Return(4); // linkedId2 확인 const linkedClass2 = parseInt(m_Data.n_linkedClass2); if (linkedClass2 > 0 && !urod.PC.Obtain.map(id => parseInt(id)).includes(linkedClass2)) return Get_Return(4); // 특성 확인 if (m_Data.n_RequireAbility > 0) { if (!urod.Ability[m_Data.n_RequireAbility] || urod.Ability[m_Data.n_RequireAbility] < 1) return Get_Return(5); } // 각성 확인 1 if (m_Data.e_RequireAwakenType1 != "None") { if (!urod.Awaken[m_Data.e_RequireAwakenType1] || urod.Awaken[m_Data.e_RequireAwakenType1].Lv < m_Data.n_RequireAwakenStep1) return Get_Return(6); } // 각성 확인 2 if (m_Data.e_RequireAwakenType2 != "None") { if (!urod.Awaken[m_Data.e_RequireAwakenType2] || urod.Awaken[m_Data.e_RequireAwakenType2].Lv < m_Data.n_RequireAwakenStep2) return Get_Return(6); } var itemtable = Get_ItemTable(); if (Use_Item(itemtable, urod, matdata.n_Value, m_Data.n_NeedGoodsCount)) { var table = Get_MissionTable(); Add_Item(table, itemtable, urod, args.JobID, 1); Set_JsonUserData(urod); return Get_Return(0); } else { return Get_Return(2); // 재화 부족 } } handlers.Save_PC_EquipJob = function(args) { var readonlydata = Get_UserReadOnlyData(); var error = Get_Error(readonlydata, args.Token); if (error < 0) return Get_Return(error); var urod = Get_JsonUserData(readonlydata); if (!urod.PC.Obtain.includes(args.JobID)) return Get_Return(1); // 없는 직업 urod.Equip.Equip["PC"] = args.JobID; Set_JsonUserData(urod); return Get_Return(0); } handlers.Save_PC_AwakenLvUp = function(args) { var readonlydata = Get_UserReadOnlyData(); var error = Get_Error(readonlydata, args.Token); if (error < 0) return Get_Return(error); var urod = Get_JsonUserData(readonlydata); var global = Get_GlobalValueTable(); var matdata = global.find(f => f.s_ID == "AWAKEN_GOODS_UPGRADE"); if (!matdata) return Get_Return(1); // 설정 누락 var materialId = matdata.n_Value; var awakenupgradetable = Get_AwakenUpgradeTable(); var audata = awakenupgradetable.find(f=>f.n_AwakenStep == urod.Awaken[args.AwakenStat].Lv); // 각성 경험치가 n_MaxUpgradeLevel 보다 작으면 가능 if (urod.Awaken[args.AwakenStat].Exp < audata.n_MaxUpgradeLevel) { var price = Get_K_Value(audata.n_AwakenStep, audata.f_BalanceConstant, audata.n_DefaultUpgradeCostValue, audata.f_CountPerUpgradeCostValue); //log.info("강화 가격 : " + price) if (Use_Item(Get_MissionTable(), urod, materialId, price)) { ++urod.Awaken[args.AwakenStat].Exp; Set_JsonUserData(urod); return Get_Return(0); } else return Get_Return(2); } else return Get_Return(3); } handlers.Save_PC_Awaken = function(args) { var readonlydata = Get_UserReadOnlyData(); var error = Get_Error(readonlydata, args.Token); if (error < 0) return Get_Return(error); var urod = Get_JsonUserData(readonlydata); var awakenupgradetable = Get_AwakenUpgradeTable(); var audata = awakenupgradetable.find(f=>f.n_AwakenStep == urod.Awaken[args.AwakenStat].Lv); // 각성 경험치가 n_MaxUpgradeLevel 보다 같으면 가능 if (urod.Awaken[args.AwakenStat].Exp >= audata.n_MaxUpgradeLevel) { // 다음 각성 단계가 있어야 각성 가능 var nextaudata = awakenupgradetable.find(f=>f.n_AwakenStep == urod.Awaken[args.AwakenStat].Lv + 1); if (nextaudata) { var matkey = ""; switch (args.AwakenStat) { case "STR": matkey = "AWAKEN_GOODS_STR"; break; case "DEX": matkey = "AWAKEN_GOODS_DEX"; break; case "INT": matkey = "AWAKEN_GOODS_INT"; break; case "LUK": matkey = "AWAKEN_GOODS_LUK"; break; } var global = Get_GlobalValueTable(); var matdata = global.find(f => f.s_ID == matkey); if (!matdata) return Get_Return(1); // 설정 누락 var materialId = matdata.n_Value; //log.info("필요한 재화 " + materialId + ", 필요한 갯수 " + audata.n_AwakenGoodsCost); if (Use_Item(Get_MissionTable(), urod, materialId, audata.n_AwakenGoodsCost)) { ++urod.Awaken[args.AwakenStat].Lv; urod.Awaken[args.AwakenStat].Exp = 0; Set_JsonUserData(urod); return Get_Return(0); } else return Get_Return(2); } else return Get_Return(4); } else return Get_Return(3); } handlers.Save_PC_LimitLvUp = function(args) { var readonlydata = Get_UserReadOnlyData(); var error = Get_Error(readonlydata, args.Token); if (error < 0) return Get_Return(error); var urod = Get_JsonUserData(readonlydata); var limittable = Get_BreakingLimitTable(); var limitdata = limittable.find(f=>f.n_LimitLv == urod.PC.LLv); var limitdata_next = limittable.find(f=>f.n_LimitLv == urod.PC.LLv + 1); if (!limitdata_next) return Get_Return(5); // 더 이상 초월 불가 var global = Get_GlobalValueTable(); var matdata = global.find(f => f.s_ID == "n_AbilityMaterialID"); if (!matdata) return Get_Return(3); // 설정 누락 // PC 레벨 확인 if (urod.PC.Lv >= limitdata.n_RequireLevel) { // 각성 레벨 확인 var totalawakenLv = urod.Awaken["STR"].Lv + urod.Awaken["DEX"].Lv + urod.Awaken["INT"].Lv + urod.Awaken["LUK"].Lv; //log.info("totalawakenLv " + totalawakenLv); if (totalawakenLv >= limitdata.n_RequireTotalStat) { ++urod.PC.LLv; var matamount = limitdata_next.n_MaxAbilityPoint - limitdata.n_MaxAbilityPoint; Add_Item(Get_MissionTable(), Get_ItemTable(), urod, matdata.n_Value, matamount); Set_JsonUserData(urod); return Get_Return(0); } else return Get_Return(2); // PC 레벨 부족 } else return Get_Return(1); // PC 레벨 부족 } handlers.Save_PC_LimitSlotOptionChange = function(args) { var readonlydata = Get_UserReadOnlyData(); var error = Get_Error(readonlydata, args.Token); if (error < 0) return Get_Return(error); var urod = Get_JsonUserData(readonlydata); // 열려 있는 슬롯이 있는 지 확인 var OpenSlots = []; var LockCount = 0; var limittable = Get_BreakingLimitTable(); var lst = urod.LimitSlot[args.Preset]; for (var i = 0; i < lst.length; i++) { var limitdata = limittable.find(f=>f.n_limitSlotMagic == i + 1); if (limitdata.n_LimitLv <= urod.PC.LLv) { if (lst[i].Lock == 0) OpenSlots.push(i); else ++LockCount; } } log.info("OpenSlotCount : " + OpenSlots.length); log.info("LockCount : " + LockCount); if (OpenSlots.length == 0) return Get_Return(1); var global = Get_GlobalValueTable(); var matdata = global.find(f => f.s_ID == "n_BreakingLimitSlotMaterialID"); if (!matdata) return Get_Return(3); // 설정 누락 var table = Get_MissionTable(); var price = 10 * ((1 + LockCount) * LockCount / 2 + 1); log.info("price : " + price); if (Use_Item(table, urod, matdata.n_Value, price)) { var rtnAdd = []; // [{ slot, randombagid, optionlv }] // 슬롯만큼 for문 돌리기 for (var i = 0; i < OpenSlots.length; ++i) { //log.info("옵션 변경 슬롯 : " + OpenSlots[i]); var limitslotmagicrateTable = Get_LimitSlotMagicRateTable(); var lv = urod.PC.LLv; if (lv > 9) lv = 9; var lsmc_data = limitslotmagicrateTable.find(f=>f.n_NeedLimitLv == lv); //log.info("초월 레벨 : " + urod.PC.LLv + ", " + lv); //log.info(lsmc_data); var randombaTable = Get_RandomBagTable(); var enchantgradeTable = Get_EnchantGradeTable(); var grade = GetRandomGachaGrade(lv); //log.info("등급 : " + grade); // 랜덤백에서 아이템 id 얻기 var optionitemID = Get_RandomItemId(lsmc_data.n_DropIndex, grade); //log.info("랜덤백 ID : " + optionitemID); // 인챈트그레이드에서 옵션 레벨 얻기 var enchantgrade_data = enchantgradeTable.find(f=>f.n_EnchantGrade == grade); //log.info(enchantgrade_data); var olv = getRandomIntInclusive(enchantgrade_data.n_OptionLevelMin, enchantgrade_data.n_OptionLevelMax); //log.info(olv); rtnAdd.push({ slot : OpenSlots[i], randombagid : optionitemID, optionlv : olv }); // 데이터에 저장 lst[OpenSlots[i]].ID = optionitemID; lst[OpenSlots[i]].Lv = olv; } //log.info(rtnAdd); Add_MissionCount(table, urod, "HERO_OPTION_CHANGE", 0, OpenSlots.length, false); Add_MissionCount(table, urod, "HERO_OPTION_CHANGE_ACC", 0, OpenSlots.length, false); Set_JsonUserData(urod); return Get_Return(0, rtnAdd); } else return Get_Return(2); } handlers.Save_PC_LimitSlotLock = function(args) { var readonlydata = Get_UserReadOnlyData(); var error = Get_Error(readonlydata, args.Token); if (error < 0) return Get_Return(error); var urod = Get_JsonUserData(readonlydata); // 열린 슬롯인 지 확인 var limittable = Get_BreakingLimitTable(); var lv = urod.PC.LLv; if (lv > 9) lv = 9; var limitdata = limittable.find(f=>f.n_LimitLv == lv); if (limitdata.n_limitSlotMagic >= args.Slot) { var slot = urod.LimitSlot[args.Preset][args.Slot - 1]; // 잠기지 않았다면 잠금, 잠겼다면 잠금 해제 if (slot.Lock == 0) slot.Lock = 1; else slot.Lock = 0; Set_JsonUserData(urod); return Get_Return(0); } else return Get_Return(1); } handlers.Save_PC_LimitPreset = function(args) { var readonlydata = Get_UserReadOnlyData(); var error = Get_Error(readonlydata, args.Token); if (error < 0) return Get_Return(error); var urod = Get_JsonUserData(readonlydata); urod.Equip.LimitPreset = args.Preset; Set_JsonUserData(urod); return Get_Return(0); } handlers.Save_Equipment_Craft = function(args) { var readonlydata = Get_UserReadOnlyData(); var error = Get_Error(readonlydata, args.Token); if (error < 0) return Get_Return(error); var urod = Get_JsonUserData(readonlydata); var equipcraftingtable = Get_EquipCraftingTable(); // 재료 체크 var Tdata = equipcraftingtable.find(f=>f.n_CraftingItemID == args.ItemID); if (Tdata) { if (Tdata.n_MaterialValue1 == 0 || Check_ItemAmount(urod, Tdata.n_MaterialValue1, Tdata.n_MaterialCount1)) { if (Tdata.n_MaterialValue2 == 0 || Check_ItemAmount(urod, Tdata.n_MaterialValue2, Tdata.n_MaterialCount2)) { if (Tdata.n_MaterialValue3 == 0 || Check_ItemAmount(urod, Tdata.n_MaterialValue3, Tdata.n_MaterialCount3)) { if (Tdata.n_MainGoodsID == 0 || Check_ItemAmount(urod, Tdata.n_MainGoodsID, Tdata.n_MainGoodsCount)) { var table = Get_MissionTable(); if (Tdata.n_MaterialValue1 > 0) Use_Item(table, urod, Tdata.n_MaterialValue1, Tdata.n_MaterialCount1); if (Tdata.n_MaterialValue2 > 0) Use_Item(table, urod, Tdata.n_MaterialValue2, Tdata.n_MaterialCount2); if (Tdata.n_MaterialValue3 > 0) Use_Item(table, urod, Tdata.n_MaterialValue3, Tdata.n_MaterialCount3); if (Tdata.n_MainGoodsID > 0) Use_Item(table, urod, Tdata.n_MainGoodsID, Tdata.n_MainGoodsCount); Add_Item(table, Get_ItemTable(), urod, Tdata.n_CraftingItemID, 1); Add_MissionCount(table, urod, "EQUIP_ITEM_CRAFTING", 0, 1); Add_MissionCount(table, urod, "EQUIP_ITEM_CRAFTING_ACC", 0, 1); Set_JsonUserData(urod); return Get_Return(0); } } } } return Get_Return(1); } return Get_Return(2); } handlers.Save_Equipment_Equip = function(args) { var readonlydata = Get_UserReadOnlyData(); var error = Get_Error(readonlydata, args.Token); if (error < 0) return Get_Return(error); var urod = Get_JsonUserData(readonlydata); // 가지고 있는 아이템인 지 확인 if (IsObtainItem(urod, args.ItemID)) { var equipmenttable = Get_EquipmentTable(); var equipdata = equipmenttable.find(f=>f.n_EquipID == args.ItemID); if (!equipdata) return Get_Return(1); // 이미 착용중인 지 확인 if (urod.Equip.Equip[equipdata.e_EquipParts] == args.ItemID) return Get_Return(2); urod.Equip.Equip[equipdata.e_EquipParts] = args.ItemID; switch (equipdata.e_EquipParts) { case "Weapon": Add_MissionCount(Get_MissionTable(), urod, "EQUIP_ITEM_MOUNT_PARTS_LIMIT", 1, 1); break; case "Armor": Add_MissionCount(Get_MissionTable(), urod, "EQUIP_ITEM_MOUNT_PARTS_LIMIT", 2, 1); break; case "Helmet": Add_MissionCount(Get_MissionTable(), urod, "EQUIP_ITEM_MOUNT_PARTS_LIMIT", 3, 1); break; case "Extra": Add_MissionCount(Get_MissionTable(), urod, "EQUIP_ITEM_MOUNT_PARTS_LIMIT", 4, 1); break; case "Ring": Add_MissionCount(Get_MissionTable(), urod, "EQUIP_ITEM_MOUNT_PARTS_LIMIT", 5, 1); break; case "Necklace": Add_MissionCount(Get_MissionTable(), urod, "EQUIP_ITEM_MOUNT_PARTS_LIMIT", 6, 1); break; } Set_JsonUserData(urod); return Get_Return(0); } return Get_Return(1); } handlers.Save_Equipment_Smelting = function(args) { var readonlydata = Get_UserReadOnlyData(); var error = Get_Error(readonlydata, args.Token); if (error < 0) return Get_Return(error); var urod = Get_JsonUserData(readonlydata); if (!urod.Equipment[args.ItemID]) return Get_Return(3); var lv = urod.Equipment[args.ItemID][1]; // 영웅 초월 레벨에 따른 레벨 제한 확인 var llv = urod.PC.LLv > 9 ? 9 : urod.PC.LLv; var limitData = Get_BreakingLimitTable().find(f=>f.n_LimitLv == llv); if (lv >= limitData.n_Equip_Upgrade_Limit) return Get_Return(2); // 다음 강화 가능한 지 확인 var smeltingTable = Get_EquipSmeltingTable(); var nextSmeltingData = smeltingTable.find(f=>f.n_SmeltingStep == lv + 1); if (!nextSmeltingData) return Get_Return(2); // 재료 확인 var table = Get_MissionTable(); var smeltingData = smeltingTable.find(f=>f.n_SmeltingStep == lv); if (Use_Item(table, urod, args.ItemID, smeltingData.n_UpgradePrice)) { // 확률 적용 if (IsRateTrue1000000(smeltingData.n_NextStepRate)) { ++urod.Equipment[args.ItemID][1]; // 제련 레벨 Add_MissionCount(table, urod, "EQUIP_ITEM_UPGRADE_ACC", 0, 1); Add_MissionCount(table, urod, "EQUIP_ITEM_UPGRADE_ALL", 0, 1); Add_MissionCount(table, urod, "EQUIP_ITEM_UPGRADE_LIMIT", 0, 1); Set_JsonUserData(urod); return Get_Return(0); } ++urod.Equipment[args.ItemID][2]; // 제련 시도 횟수 return Get_Return(4); } return Get_Return(1); } handlers.Save_Equipment_Smelting = function(args) { var readonlydata = Get_UserReadOnlyData(); var error = Get_Error(readonlydata, args.Token); if (error < 0) return Get_Return(error); var urod = Get_JsonUserData(readonlydata); if (!urod.Equipment[args.ItemID]) return Get_Return(3); var lv = urod.Equipment[args.ItemID][1]; // 영웅 초월 레벨에 따른 레벨 제한 확인 var llv = urod.PC.LLv > 9 ? 9 : urod.PC.LLv; var limitData = Get_BreakingLimitTable().find(f=>f.n_LimitLv == llv); if (lv >= limitData.n_Equip_Upgrade_Limit) return Get_Return(2); // 다음 강화 가능한 지 확인 var smeltingTable = Get_EquipSmeltingTable(); var nextSmeltingData = smeltingTable.find(f=>f.n_SmeltingStep == lv + 1); if (!nextSmeltingData) return Get_Return(2); // 재료 확인 var table = Get_MissionTable(); var smeltingData = smeltingTable.find(f=>f.n_SmeltingStep == lv); if (Use_Item(table, urod, args.ItemID, smeltingData.n_UpgradePrice)) { // 확률 적용 if (IsRateTrue1000000(smeltingData.n_NextStepRate)) { ++urod.Equipment[args.ItemID][1]; // 제련 레벨 Add_MissionCount(table, urod, "EQUIP_ITEM_UPGRADE_ACC", 0, 1); Add_MissionCount(table, urod, "EQUIP_ITEM_UPGRADE_ALL", 0, 1); Add_MissionCount(table, urod, "EQUIP_ITEM_UPGRADE_LIMIT", 0, 1); Set_JsonUserData(urod); return Get_Return(0); } ++urod.Equipment[args.ItemID][2]; // 제련 시도 횟수 return Get_Return(4); } return Get_Return(1); } handlers.Save_Equipment_Decomposition = function(args) { var readonlydata = Get_UserReadOnlyData(); var error = Get_Error(readonlydata, args.Token); if (error < 0) return Get_Return(error); if (args.Count <= 0) return Get_Return(1); var urod = Get_JsonUserData(readonlydata); if (!urod.Equipment[args.ItemID]) return Get_Return(3); var obtainAmount = Get_ItemAmount(urod, args.ItemID); if (obtainAmount < args.Count) return Get_Return(2); // 분해 var table = Get_MissionTable(); Use_Item(table, urod, args.ItemID, args.Count); var equipmenttable = Get_EquipmentTable(); var equipdata = equipmenttable.find(f=>f.n_EquipID == args.ItemID); Add_Item(table, Get_ItemTable(), urod, equipdata.n_DecompositionReward, equipdata.n_DecompositionCount * args.Count); Add_MissionCount(table, urod, "EQUIP_ITEM_DISTROY_ALL", 0, args.Count); Add_MissionCount(table, urod, "EQUIP_ITEM_DISTROY_ACC", 0, args.Count); Set_JsonUserData(urod); return Get_Return(0); } handlers.Save_EquipItem_SlotLvUp = function(args) { var readonlydata = Get_UserReadOnlyData(); var error = Get_Error(readonlydata, args.Token); if (error < 0) return Get_Return(error); if (args.Count <= 0) return Get_Return(1); var urod = Get_JsonUserData(readonlydata); var itemtable = Get_ItemTable(); var itemdata = itemtable.find(f=>f.n_ItemID == args.ItemID); if (!itemdata) return Get_Return(3); var esu_table = Get_EquipmentSlotUpgradeTable(); var esu_data = esu_table.find(f=>f.e_EquipParts == itemdata.e_ItemType); if (!esu_data) return Get_Return(4); var table = Get_MissionTable(); var m_SD_Slot = urod.Slot.find(f => f.Parts == esu_data.e_EquipParts); var price = parseInt(Get_K_Value(m_SD_Slot.Lv, esu_data.f_BalanceConstantPrice, esu_data.n_DefaultValuePrice, esu_data.f_LevelPerValuePrice)); if (price <= 0) price = 1; log.info("슬롯 강화 비용 " + price); if (Use_Item(table, urod, esu_data.n_ConsumeGoodsID, price)) { m_SD_Slot.Use += price; ++m_SD_Slot.Lv; Add_MissionCount(table, urod, "EQUIP_SLOT_UPGRADE_ALL", 0, 1); Add_MissionCount(table, urod, "EQUIP_SLOT_UPGRADE_ACC", 0, 1); Set_JsonUserData(urod); return Get_Return(0); } return Get_Return(1); } handlers.Save_EquipItem_SlotLvUpInit = function(args) { var readonlydata = Get_UserReadOnlyData(); var error = Get_Error(readonlydata, args.Token); if (error < 0) return Get_Return(error); var urod = Get_JsonUserData(readonlydata); var itemtable = Get_ItemTable(); var itemdata = itemtable.find(f=>f.n_ItemID == args.ItemID); if (!itemdata) return Get_Return(3); var esu_table = Get_EquipmentSlotUpgradeTable(); var esu_data = esu_table.find(f=>f.e_EquipParts == itemdata.e_ItemType); if (!esu_data) return Get_Return(4); var m_SD_Slot = urod.Slot.find(f => f.Parts == esu_data.e_EquipParts); if (m_SD_Slot.Lv > 0) { Add_Item(Get_MissionTable(), Get_ItemTable(), urod, esu_data.n_ConsumeGoodsID, m_SD_Slot.Use); m_SD_Slot.Use = 0; m_SD_Slot.Lv = 0; Set_JsonUserData(urod); return Get_Return(0); } return Get_Return(1); } /////////////////////////////////// 서버 처리 handlers.Write_UnityInApp = function(args) { server.UpdateUserReadOnlyData({ PlayFabId: currentPlayerId, Permission: "Public", Data: {"UserInfo": JSON.stringify(args.AllData)} }); Add_ShopMail(args.ProductID); log.info("args.IsEditor " + args.IsEditor); if (args.IsEditor) { log.info("아이템 저장 " + args.ProductID); server.GrantItemsToUser( { PlayFabID: currentPlayerId, ItemIds : [args.ProductID] }); } return { error: Get_Error(args.Token) } } handlers.Write_Onestore = function(args) { server.UpdateUserReadOnlyData({ PlayFabId: currentPlayerId, Permission: "Public", Data: {"UserInfo": JSON.stringify(args.AllData)} }); Add_ShopMail(args.ProductID); var customData = { }; customData["Receipt"] = args.Receipt; server.GrantItemsToUsers({ "ItemGrants": [{ "PlayFabId" : currentPlayerId, "ItemId" : args.ProductID, "Data" : customData }] }); return { error: Get_Error(args.Token) } } function Add_ShopMail(productid) { var shoptable = Get_ShopTable(); var finddata = shoptable.find(f=>f.s_InappID == productid); if(!CheckNullOrEmpty(finddata)) { var maildata = {}; maildata.Day = 30; maildata.ItemID = finddata.n_ShopItemID; maildata.Amount = 1; Add_Mail(maildata); } } handlers.SendMail_Daily = function(args) { var error = Get_Error(args.Token); if(error < 0) return {error:error}; server.UpdateUserReadOnlyData({ PlayFabId: currentPlayerId, Permission: "Public", Data: {"UserInfo": JSON.stringify(args.AllData)} }); if(args.IsKing) Add_ShopMail("com.filgoodbandits.john.dailyking"); if(args.IsGod) Add_ShopMail("com.filgoodbandits.john.dailygod"); if(args.IsGemSubscribe) { var maildata = {}; maildata.Day = 30; maildata.Reward = "GemSubscribeBox1"; maildata.RewardAmount = 1; maildata.Msg = "그리폰이 배달한 주머니입니다."; Add_Mail(maildata); } if(args.IsGemSubscribe2) { var maildata = {}; maildata.Day = 30; maildata.Reward = "GemSubscribeBox2"; maildata.RewardAmount = 1; maildata.Msg = "흰토끼가 배달한 주머니입니다."; Add_Mail(maildata); } if(args.IsGemSubscribe3) { var maildata = {}; maildata.Day = 30; maildata.Reward = "GemSubscribeBox3"; maildata.RewardAmount = 1; maildata.Msg = "모조 거북이 배달한 주머니입니다."; Add_Mail(maildata); } return { error: error } } handlers.GuideQuestComplete = function(args) { var error = Get_Error(args.Token); if(error < 0) return {error:error}; server.UpdateUserReadOnlyData({ PlayFabId: currentPlayerId, Permission: "Public", Data: {"UserInfo": JSON.stringify(args.AllData)} }); var maildata = {}; maildata.Reward = "Gem"; maildata.RewardAmount = 1000; maildata.Msg = "가이드 퀘스트 완료를 축하합니다."; Add_Mail(maildata); return { error: error } } handlers.Save_Rank = function(args) { progression.UpdateLeaderboardEntries({PlayFabId: currentPlayerId, LeaderboardName: args.LeaderboardName, Entries : [ { "EntityId": args.EntityID, "Metadata": args.Metadata, "Scores": args.Scores } ]}); } handlers.SaveToStageRank = function(args) { var error = Get_Error(args.Token); if(error < 0) return {error:error}; server.UpdatePlayerStatistics({PlayFabId: currentPlayerId, Statistics : [ { "StatisticName": "Stage", "Value": args.MaxStage } ]}); return { error: error } } handlers.SaveToDragonRank = function(args) { var error = Get_Error(args.Token); if(error < 0) return {error:error}; server.UpdatePlayerStatistics({PlayFabId: currentPlayerId, Statistics : [ { "StatisticName": "Dragon", "Value": args.Lv } ]}); return { error: error } } handlers.Check_CanBuyInapp = function(args) { // 인앱 구매전 에러 확인용 return { error: Get_Error(args.Token) } } handlers.Del_TitlePlayer = function(args) { if(!CheckNullOrEmpty(args.Agree)) { var playerprofile = entity.GetTitlePlayersFromMasterPlayerAccountIds({ MasterPlayerAccountIds: [currentPlayerId]}); var titleId = playerprofile.TitlePlayerAccounts[currentPlayerId].Id; log.info("순위표를 지웁니다."); progression.DeleteLeaderboardEntries({ Name: "Rank_Maze", EntityIds: [titleId]}); log.info("타이틀 계정을 지웁니다."); server.DeletePlayer({PlayFabId: currentPlayerId}); } } handlers.Rank_Reward = function(args) { // 현재 버전 확인 var cur = progression.GetLeaderboardDefinition({ Name: args.LeaderboardName }); //log.info("현재 버전 : " + cur.Version); var playerprofile = entity.GetTitlePlayersFromMasterPlayerAccountIds({ MasterPlayerAccountIds: [currentPlayerId]}); var titleId = playerprofile.TitlePlayerAccounts[currentPlayerId].Id; //log.info("titleId : " + titleId); // 이전 버전에서 내 순위 확인 var a = progression.GetLeaderboardAroundEntity({ LeaderboardName: args.LeaderboardName, MaxSurroundingEntries: 1, Version: cur.Version - 1, Entity: { Id : titleId, Type: "title_player_account" } }); //log.info("a : " + JSON.stringify(a)); for (var i in a.Rankings) { //log.info("ranker id : " + a.Rankings[i].Entity.Id); if (a.Rankings[i].Entity.Id == titleId) { //log.info("나의 랭킹 : " + a.Rankings[i].Rank); // 현재 날짜 가져오기 const now = new Date(); const month = now.getMonth() + 1; // getMonth()는 0부터 시작하므로 +1 const day = now.getDate(); // getDate()는 1~31 반환 const rank = a.Rankings[i].Rank; // 리더보드에서 가져온 순위 값 var maildata = {}; maildata.Day = 7; maildata.ItemID = 1; maildata.Amount = 10; // TOOD 정인호 : 순위에 따라 지급 maildata.Msg = formatString(args.Msg, [month, day, rank]); Add_Mail(maildata); break; } } } handlers.Send_Cheat = function() { server.UpdateUserReadOnlyData({ PlayFabId: currentPlayerId, Permission: "Public", Data: {"Cheat": "Use" } }); server.UpdatePlayerStatistics({PlayFabId: currentPlayerId, Statistics : [ { "StatisticName": "Best Stage", "Value": 1 }, { "StatisticName": "WeeklyPvP", "Value": 0 }, { "StatisticName": "BossRaid", "Value": 0 }, { "StatisticName": "Reset Best Stage", "Value": 0 } ]}); } handlers.Use_Coupon = function(args) { log.info(args.Coupon); var error = Get_Error(args.Token); if(error < 0) return {error:error}; var userdata = server.GetUserData({ PlayFabId: currentPlayerId }).Data; var couponinfo = []; if(!CheckNullOrEmpty(userdata.CouponInfo)) couponinfo = JSON.parse(userdata.CouponInfo.Value); var coupontable = Get_CouponTable(); var findcoupon = coupontable.find(f=>f.Coupon == args.Coupon); if(findcoupon != null) { // 전체 쿠폰 var nowtime = Get_CurKoreaTime(); var starttime = new Date(findcoupon.StartTime); var endtime = new Date(findcoupon.EndTime); if(nowtime - starttime > 0 && endtime - nowtime > 0) { var find = couponinfo.find(f=>f == findcoupon.Index); if(find == null) { // 참여 여부 저장 couponinfo.push(findcoupon.Index); server.UpdateUserData({ PlayFabId: currentPlayerId, Permission: "Public", Data: {"CouponInfo": JSON.stringify(couponinfo)} }); // 보상 지급 var RtnValue = []; var makereward = {}; var reward1 = findcoupon.Reward1.split(','); makereward.Reward = reward1[0]; makereward.RewardAmount = reward1[1]; RtnValue.push(makereward); var reward2 = []; if(!CheckNullOrEmpty(findcoupon.Reward2)) { makereward = {}; reward2 = findcoupon.Reward2.split(','); makereward.Reward = reward2[0]; makereward.RewardAmount = reward2[1]; RtnValue.push(makereward); } return { error: error, Rewards: '{"Rewards":' + JSON.stringify(RtnValue) + '}' }; } } } return { error: 4 }; } handlers.Send_Push = function(args) { var urod = server.GetUserReadOnlyData({ PlayFabId: currentPlayerId }).Data; var common = JSON.parse(urod.UserInfo.Value).Common; var isSendAgree = false; var profile = server.GetPlayerProfile( {PlayFabId: currentPlayerId, ProfileConstraints: {ShowLocations: true}} ); if (profile.PlayerProfile.Locations[profile.PlayerProfile.Locations.length - 1].CountryCode == "KR") { var dt = new Date(); dt.setHours(dt.getHours() + 9); if(dt.getHours() >= 8 && dt.getHours() <= 21) isSendAgree = common.NotificationAgreeDaytime; else isSendAgree = common.NotificationAgreeNighttime; } if (isSendAgree) { // try to send push notification try { server.SendPushNotification( { Recipient : currentPlayerId, Package : { Message : args.Msg, Title: args.Title } }); } catch (ex) { log.info("Target player has not registered for Push Notifications"); } } } handlers.CafeEvent_Lv5 = function(args) { var userdata = server.GetUserData({ PlayFabId: currentPlayerId }).Data; var eventinfo = []; if(!CheckNullOrEmpty(userdata.EventInfo)) eventinfo = JSON.parse(userdata.EventInfo.Value); var find = eventinfo.find(f=>f.Event == "Lv10"); if(find == null) { // 참여 여부 저장 var eventwrite = {}; eventwrite.Event = "Lv10"; eventinfo.push(eventwrite); server.UpdateUserData({ PlayFabId: currentPlayerId, Permission: "Public", Data: {"EventInfo": JSON.stringify(eventinfo)} }); var mail = {}; mail.Reward = "Gem"; mail.RewardAmount = 2000; mail.Msg = "공식카페 마녀 레벨5 달성 이벤트 보상"; Add_Mail(mail); log.info("Lv5 보상 지급"); } else log.info("Lv5 보상을 이미 지급한 유저입니다."); } handlers.CafeEvent_SNS = function(args) { var userdata = server.GetUserData({ PlayFabId: currentPlayerId }).Data; var eventinfo = []; if(!CheckNullOrEmpty(userdata.EventInfo)) eventinfo = JSON.parse(userdata.EventInfo.Value); var find = eventinfo.find(f=>f.Event == "SNS"); if(find == null) { // 참여 여부 저장 var eventwrite = {}; eventwrite.Event = "SNS"; eventinfo.push(eventwrite); server.UpdateUserData({ PlayFabId: currentPlayerId, Permission: "Public", Data: {"EventInfo": JSON.stringify(eventinfo)} }); var mail = {}; mail.Reward = "Gem"; mail.RewardAmount = 10000; mail.Msg = "SNS 이벤트 보상입니다."; Add_Mail(mail); log.info("SNS 보상 지급"); } else log.info("SNS 보상을 이미 지급한 유저입니다."); } handlers.CafeEvent_Greeting = function(args) { var userdata = server.GetUserData({ PlayFabId: currentPlayerId }).Data; var eventinfo = []; if(!CheckNullOrEmpty(userdata.EventInfo)) eventinfo = JSON.parse(userdata.EventInfo.Value); var find = eventinfo.find(f=>f.Event == "Greeting"); if(find == null) { // 참여 여부 저장 var eventwrite = {}; eventwrite.Event = "Greeting"; eventinfo.push(eventwrite); server.UpdateUserData({ PlayFabId: currentPlayerId, Permission: "Public", Data: {"EventInfo": JSON.stringify(eventinfo)} }); var mail = {}; mail.Reward = "Gem"; mail.RewardAmount = 3000; mail.Msg = "공식카페 이벤트 오픈 전 인사 보상입니다."; Add_Mail(mail); log.info("오픈 전 인사 보상 지급"); } else log.info("오픈 전 인사 보상을 이미 지급한 유저입니다."); } handlers.CafeEvent_MyFarm = function(args) { var userdata = server.GetUserData({ PlayFabId: currentPlayerId }).Data; var eventinfo = []; if(!CheckNullOrEmpty(userdata.EventInfo)) eventinfo = JSON.parse(userdata.EventInfo.Value); var find = eventinfo.find(f=>f.Event == "MyFarm"); if(find == null) { // 참여 여부 저장 var eventwrite = {}; eventwrite.Event = "MyFarm"; eventinfo.push(eventwrite); server.UpdateUserData({ PlayFabId: currentPlayerId, Permission: "Public", Data: {"EventInfo": JSON.stringify(eventinfo)} }); var mail = {}; mail.Reward = "Inven"; mail.ID = 50; mail.RewardAmount = 50; mail.Msg = "마이팜 인증 보상입니다."; Add_Mail(mail); log.info("마이팜 인증 보상 지급"); } else log.info("마이팜 인증 보상을 이미 지급한 유저입니다."); } handlers.SendMail_DailyInit = function(args) { var maildata = {}; maildata.Reward = "DailyInit"; maildata.RewardAmount = 0; maildata.Msg = "일일 초기화 아이템\n바로 사용해주세요!!"; maildata.Day = 1; Add_Mail(maildata); } handlers.CheckError = function(args) { var urod = server.GetUserReadOnlyData({ PlayFabId: currentPlayerId }).Data; var uinfo = JSON.parse(urod.UserInfo.Value); var existnull = false; for(var i in uinfo.Common) { if(uinfo.Common[i] == null) { uinfo.Common[i] = 0; existnull = true; } } if(existnull) server.UpdateUserReadOnlyData({ PlayFabId: currentPlayerId, Permission: "Public", Data: {"UserInfo": JSON.stringify(uinfo)} }); /* if(uinfo.Money[3] < 0) { var gem1 = JSON.parse(server.GetTitleInternalData("StoneMinus").Data.StoneMinus); gem1.push(currentPlayerId); server.SetTitleInternalData({ PlayFabId: currentPlayerId, Key: "StoneMinus", Value: JSON.stringify(gem1) }); } if(uinfo.Money[0] < 0) { var gem1 = JSON.parse(server.GetTitleInternalData("GemMinus").Data.GemMinus); gem1.push(currentPlayerId); server.SetTitleInternalData({ PlayFabId: currentPlayerId, Key: "GemMinus", Value: JSON.stringify(gem1) }); } */ } handlers.Update_BackUp = function(args) { BackUpUserInfo(); } function BackUpUserInfo() { var urod = server.GetUserReadOnlyData({ PlayFabId: currentPlayerId }).Data; var uinfo = JSON.parse(urod.UserInfo.Value); var uprod = server.GetUserPublisherData({ PlayFabId: currentPlayerId }).Data; var index = 1; if(CheckNullOrEmpty(uprod.Key)) { index = 1; } else index = uprod.Key.Value; if(index == 1) server.UpdateUserPublisherReadOnlyData({ PlayFabId: currentPlayerId, Data: { UserInfo1 : JSON.stringify(uinfo)} }); else if(index == 2) server.UpdateUserPublisherReadOnlyData({ PlayFabId: currentPlayerId, Data: { UserInfo2 : JSON.stringify(uinfo)} }); else if(index == 3) server.UpdateUserPublisherReadOnlyData({ PlayFabId: currentPlayerId, Data: { UserInfo3 : JSON.stringify(uinfo)} }); else if(index == 4) server.UpdateUserPublisherReadOnlyData({ PlayFabId: currentPlayerId, Data: { UserInfo4 : JSON.stringify(uinfo)} }); else if(index == 5) server.UpdateUserPublisherReadOnlyData({ PlayFabId: currentPlayerId, Data: { UserInfo5 : JSON.stringify(uinfo)} }); else if(index == 6) server.UpdateUserPublisherReadOnlyData({ PlayFabId: currentPlayerId, Data: { UserInfo6 : JSON.stringify(uinfo)} }); else if(index == 7) server.UpdateUserPublisherReadOnlyData({ PlayFabId: currentPlayerId, Data: { UserInfo7 : JSON.stringify(uinfo)} }); else if(index == 8) server.UpdateUserPublisherReadOnlyData({ PlayFabId: currentPlayerId, Data: { UserInfo8 : JSON.stringify(uinfo)} }); else if(index == 9) server.UpdateUserPublisherReadOnlyData({ PlayFabId: currentPlayerId, Data: { UserInfo9 : JSON.stringify(uinfo)} }); ++index; if(index > 9) index = 1; server.UpdateUserPublisherData({ PlayFabId: currentPlayerId, Data: { Key : index } }); } handlers.Update_Mail = function(args) { // 점검 보상 우편 var makemail = {}; makemail.Reward = "Gem"; makemail.RewardAmount = 500; var kortime = Get_CurKoreaTime(); makemail.Msg = (kortime.getMonth() + 1) + '월 ' + kortime.getDate() + '일 점검 보상입니다.'; makemail.Day = 1; Add_Mail(makemail); //if(!CheckNullOrEmpty(urod.EventInfo)) //{ // server.UpdateUserReadOnlyData({ PlayFabId: currentPlayerId, Data: {"EventInfo": null} }); //} } handlers.CheckOtherData = function(args) { var uidata = server.GetUserInternalData({ PlayFabId: args.ID }).Data; if(!CheckNullOrEmpty(uidata.BanUser)) return { error: -2 }; var error = 0; var urod = server.GetUserReadOnlyData({ PlayFabId: args.ID }).Data.UserInfo.Value; var json = JSON.parse(urod); if(json.Common[49] == 0 || json.Common[49] != args.PW) error = -1; return { error: error, }; } handlers.GetOtherData = function(args) { server.UpdateUserInternalData({ PlayFabId: args.ID, Permission: "Public", Data: {"BanUser": 1 } }); var urod = server.GetUserReadOnlyData({ PlayFabId: args.ID }).Data.UserInfo.Value; var json = JSON.parse(urod); json.Common[49] = 0; server.UpdateUserReadOnlyData({ PlayFabId: currentPlayerId, Permission: "Public", Data: {"UserInfo": JSON.stringify(json)} }); } function Get_Inventory() { return server.GetUserInventory({ PlayFabId: currentPlayerId }); } function Get_Tables() { return server.GetTitleInternalData({ Keys: null }).Data; } function Get_TitleData() { return server.GetTitleData({ Keys: null }).Data; } function Get_PvPVersion() { var result = server.GetLeaderboard({ StatisticName: "WeeklyPvP", StartPosition: 0, MaxResultsCount: 0 }); return result.Version; } function Get_CouponTable() { var table = JSON.parse(server.GetTitleInternalData("CouponTable").Data.CouponTable); return table.servertable_coupon; } function Get_ItemTable() { var titleData = server.GetTitleInternalData({ Keys: ["ItemTable"] }); return JSON.parse(titleData.Data.ItemTable); } function Get_ShopTable() { var titleData = server.GetTitleInternalData({ Keys: ["ShopTable"] }); return JSON.parse(titleData.Data.ShopTable); } function Get_MissionTable() { var titleData = server.GetTitleInternalData({ Keys: ["MissionTable"] }); return JSON.parse(titleData.Data.MissionTable); } function Get_AbilityConfigTable() { var titleData = server.GetTitleInternalData({ Keys: ["AbilityConfigData"] }); return JSON.parse(titleData.Data.AbilityConfigData); } function Get_ClassOpenTable() { return [ { "n_ClassID": "10501", "n_linkedClass1": "0", "n_linkedClass2": "0", "n_RequireAbility": "0", "e_RequireAwakenType1": "STR", "n_RequireAwakenStep1": "0", "e_RequireAwakenType2": "None", "n_RequireAwakenStep2": "0", "n_NeedGoodsCount": "1", "n_ClassOpenMission": "0" }, { "n_ClassID": "10101", "n_linkedClass1": "10501", "n_linkedClass2": "0", "n_RequireAbility": "0", "e_RequireAwakenType1": "None", "n_RequireAwakenStep1": "0", "e_RequireAwakenType2": "None", "n_RequireAwakenStep2": "0", "n_NeedGoodsCount": "1", "n_ClassOpenMission": "1" }, { "n_ClassID": "10401", "n_linkedClass1": "10501", "n_linkedClass2": "0", "n_RequireAbility": "0", "e_RequireAwakenType1": "STR", "n_RequireAwakenStep1": "0", "e_RequireAwakenType2": "None", "n_RequireAwakenStep2": "0", "n_NeedGoodsCount": "1", "n_ClassOpenMission": "2" }, { "n_ClassID": "10301", "n_linkedClass1": "10501", "n_linkedClass2": "0", "n_RequireAbility": "0", "e_RequireAwakenType1": "STR", "n_RequireAwakenStep1": "0", "e_RequireAwakenType2": "None", "n_RequireAwakenStep2": "0", "n_NeedGoodsCount": "1", "n_ClassOpenMission": "3" }, { "n_ClassID": "10502", "n_linkedClass1": "10101", "n_linkedClass2": "0", "n_RequireAbility": "0", "e_RequireAwakenType1": "DEX", "n_RequireAwakenStep1": "0", "e_RequireAwakenType2": "None", "n_RequireAwakenStep2": "0", "n_NeedGoodsCount": "1", "n_ClassOpenMission": "4" }, { "n_ClassID": "10601", "n_linkedClass1": "10101", "n_linkedClass2": "0", "n_RequireAbility": "0", "e_RequireAwakenType1": "INT", "n_RequireAwakenStep1": "0", "e_RequireAwakenType2": "None", "n_RequireAwakenStep2": "0", "n_NeedGoodsCount": "1", "n_ClassOpenMission": "5" }, { "n_ClassID": "10201", "n_linkedClass1": "10101", "n_linkedClass2": "10401", "n_RequireAbility": "0", "e_RequireAwakenType1": "DEX", "n_RequireAwakenStep1": "0", "e_RequireAwakenType2": "None", "n_RequireAwakenStep2": "0", "n_NeedGoodsCount": "1", "n_ClassOpenMission": "6" }, { "n_ClassID": "10402", "n_linkedClass1": "10401", "n_linkedClass2": "0", "n_RequireAbility": "0", "e_RequireAwakenType1": "DEX", "n_RequireAwakenStep1": "0", "e_RequireAwakenType2": "None", "n_RequireAwakenStep2": "0", "n_NeedGoodsCount": "1", "n_ClassOpenMission": "7" }, { "n_ClassID": "10202", "n_linkedClass1": "10401", "n_linkedClass2": "0", "n_RequireAbility": "0", "e_RequireAwakenType1": "INT", "n_RequireAwakenStep1": "0", "e_RequireAwakenType2": "None", "n_RequireAwakenStep2": "0", "n_NeedGoodsCount": "1", "n_ClassOpenMission": "8" }, { "n_ClassID": "10102", "n_linkedClass1": "10401", "n_linkedClass2": "10301", "n_RequireAbility": "0", "e_RequireAwakenType1": "STR", "n_RequireAwakenStep1": "0", "e_RequireAwakenType2": "None", "n_RequireAwakenStep2": "0", "n_NeedGoodsCount": "1", "n_ClassOpenMission": "9" }, { "n_ClassID": "10302", "n_linkedClass1": "10301", "n_linkedClass2": "0", "n_RequireAbility": "0", "e_RequireAwakenType1": "DEX", "n_RequireAwakenStep1": "0", "e_RequireAwakenType2": "None", "n_RequireAwakenStep2": "0", "n_NeedGoodsCount": "1", "n_ClassOpenMission": "10" }, { "n_ClassID": "10303", "n_linkedClass1": "10301", "n_linkedClass2": "0", "n_RequireAbility": "0", "e_RequireAwakenType1": "INT", "n_RequireAwakenStep1": "0", "e_RequireAwakenType2": "None", "n_RequireAwakenStep2": "0", "n_NeedGoodsCount": "1", "n_ClassOpenMission": "11" } ] } function Get_GlobalValueTable() { return [ { "s_ID": "n_CashItemID", "n_Value": "1", "exception": "캐쉬 아이템 id" }, { "s_ID": "n_JewelItemID", "n_Value": "3", "exception": "보석 아이템 id" }, { "s_ID": "ATK", "n_Value": "1", "exception": "sss" }, { "s_ID": "HP", "n_Value": "100", "exception": "sss" }, { "s_ID": "DEF", "n_Value": "1", "exception": "sss" }, { "s_ID": "M_DEF", "n_Value": "1", "exception": "sss" }, { "s_ID": "ATK_Multiplier", "n_Value": "0", "exception": "sss" }, { "s_ID": "HP_Multiplier", "n_Value": "0", "exception": "sss" }, { "s_ID": "DEF_Multiplier", "n_Value": "0", "exception": "sss" }, { "s_ID": "M_DEF_Multiplier", "n_Value": "0", "exception": "sss" }, { "s_ID": "MP", "n_Value": "30", "exception": "sss" }, { "s_ID": "MP_Multiplier", "n_Value": "0", "exception": "sss" }, { "s_ID": "ATK_FIXED", "n_Value": "0", "exception": "" }, { "s_ID": "ATK_FIXED_DECREASE", "n_Value": "0", "exception": "" }, { "s_ID": "CRI", "n_Value": "0", "exception": "" }, { "s_ID": "CRI_DMG_Multiplier", "n_Value": "10", "exception": "" }, { "s_ID": "M_CRI", "n_Value": "100", "exception": "" }, { "s_ID": "M_CRI_DMG_Multiplier", "n_Value": "0.1", "exception": "" }, { "s_ID": "SKILL_Multiplier", "n_Value": "0", "exception": "" }, { "s_ID": "COOLTIME_Multiplier", "n_Value": "0", "exception": "" }, { "s_ID": "HERO_ATK_SPD", "n_Value": "0.75", "exception": "" }, { "s_ID": "ATK_SPD_Multiplier", "n_Value": "1", "exception": "" }, { "s_ID": "HERO_MOVE_SPD", "n_Value": "3", "exception": "" }, { "s_ID": "MOVE_SPD_Multiplier", "n_Value": "1", "exception": "" }, { "s_ID": "HP_REGEN", "n_Value": "1", "exception": "" }, { "s_ID": "MP_REGEN", "n_Value": "3", "exception": "" }, { "s_ID": "HP_REGEN_Multiplier", "n_Value": "0", "exception": "" }, { "s_ID": "MP_REGEN_Multiplier", "n_Value": "0", "exception": "" }, { "s_ID": "PIERCING_Multiplier", "n_Value": "0", "exception": "" }, { "s_ID": "DMG_Multiplier", "n_Value": "0", "exception": "" }, { "s_ID": "GOLD_INCREASE", "n_Value": "0", "exception": "" }, { "s_ID": "GOLD_Multiplier", "n_Value": "0", "exception": "" }, { "s_ID": "EXP_Multiplier", "n_Value": "0", "exception": "" }, { "s_ID": "ITEM_Multiplier", "n_Value": "0", "exception": "" }, { "s_ID": "EnchantOpenLv1", "n_Value": "0", "exception": "" }, { "s_ID": "EnchantOpenLv2", "n_Value": "10", "exception": "" }, { "s_ID": "EnchantOpenLv3", "n_Value": "20", "exception": "" }, { "s_ID": "Defense_Coefficient", "n_Value": "6", "exception": "" }, { "s_ID": "f_PC_FindEnemyRange", "n_Value": "6", "exception": "" }, { "s_ID": "f_Pet_FindEnemyRange", "n_Value": "5", "exception": "" }, { "s_ID": "f_AvoidCoolTime", "n_Value": "5", "exception": "" }, { "s_ID": "f_KnockbackTime", "n_Value": "0.02", "exception": "" }, { "s_ID": "f_SkillTeamRange", "n_Value": "15", "exception": "" }, { "s_ID": "n_AbilityMaterialID", "n_Value": "444", "exception": "" }, { "s_ID": "n_JobMaterialID", "n_Value": "445", "exception": "" }, { "s_ID": "AWAKEN_GOODS_UPGRADE", "n_Value": "450", "exception": "" }, { "s_ID": "AWAKEN_GOODS_STR", "n_Value": "451", "exception": "" }, { "s_ID": "AWAKEN_GOODS_DEX", "n_Value": "452", "exception": "" }, { "s_ID": "AWAKEN_GOODS_INT", "n_Value": "453", "exception": "" }, { "s_ID": "AWAKEN_GOODS_LUK", "n_Value": "454", "exception": "" }, { "s_ID": "AWAKEN_GOODS_ALL", "n_Value": "455", "exception": "" }, { "s_ID": "n_BreakingLimitSlotMaterialID", "n_Value": "461", "exception": "" }, { "s_ID": "n_FirstEquipPet", "n_Value": "50002", "exception": "" }, { "s_ID": "n_PetReinforceMaterialID", "n_Value": "441", "exception": "" }, { "s_ID": "n_PetReinforcePriceOptionID1", "n_Value": "340001", "exception": "" }, { "s_ID": "n_PetReinforcePriceOptionID2", "n_Value": "340002", "exception": "" }, { "s_ID": "n_PetReinforcePriceOptionID3", "n_Value": "340003", "exception": "" }, { "s_ID": "n_PetSkillAwaken_Lv1", "n_Value": "10", "exception": "" }, { "s_ID": "n_PetSkillAwaken_Lv2", "n_Value": "20", "exception": "" }, { "s_ID": "n_PetSkillAwaken_Lv3", "n_Value": "40", "exception": "" }, { "s_ID": "n_EssenceMileageID", "n_Value": "471", "exception": "" }, { "s_ID": "n_EssenceRandomBagID", "n_Value": "9800001", "exception": "" }, { "s_ID": "n_RelicMaxStar", "n_Value": "5", "exception": "" }, { "s_ID": "n_RelicReinforceMaterialID", "n_Value": "472", "exception": "" }, { "s_ID": "n_FarmSeedID", "n_Value": "456", "exception": "" }, { "s_ID": "n_FarmPlantingSeedAmount", "n_Value": "5", "exception": "" }, { "s_ID": "n_FirstClassID", "n_Value": "10501", "exception": "최초 시작 직업" }, { "s_ID": "MazeMapCount", "n_Value": "2", "exception": "미궁 맵 개수" }, { "s_ID": "GoldDropRandomRange", "n_Value": "0.1", "exception": "몬스터 드랍 골드양 범위" }, { "s_ID": "n_Benefit1Count", "n_Value": "10", "exception": "뽑기 혜택1 횟수" }, { "s_ID": "n_Benefit2Count", "n_Value": "50", "exception": "뽑기 혜택2 횟수" }, { "s_ID": "n_Benefit1Grade", "n_Value": "4", "exception": "뽑기 혜택1 등급" }, { "s_ID": "n_Benefit2Grade", "n_Value": "5", "exception": "뽑기 혜택2 등급" } ]; } function Get_AwakenUpgradeTable() { return [ { "n_AwakenStep": "1", "n_MaxUpgradeLevel": "10", "n_AwakenGoodsCost": "1", "n_DefaultUpgradeCostValue": "10000", "f_CountPerUpgradeCostValue": "1.5", "f_BalanceConstant": "0.032" }, { "n_AwakenStep": "2", "n_MaxUpgradeLevel": "25", "n_AwakenGoodsCost": "2", "n_DefaultUpgradeCostValue": "20000", "f_CountPerUpgradeCostValue": "1.5", "f_BalanceConstant": "0.032" }, { "n_AwakenStep": "3", "n_MaxUpgradeLevel": "30", "n_AwakenGoodsCost": "3", "n_DefaultUpgradeCostValue": "30000", "f_CountPerUpgradeCostValue": "1.5", "f_BalanceConstant": "0.032" } ]; } function Get_BreakingLimitTable() { return [ { "n_LimitLv": "1", "n_RequireTotalStat": "5", "n_RequireLevel": "3", "n_MaxAbilityPoint": "1", "n_Equip_Upgrade_Limit": "10", "f_Monster_DMG_Multiplier": "0.05", "f_Boss_DMG_Multiplier": "0", "f_ALL_STAT_Multiplier": "0", "n_limitSlotMagic": "0" }, { "n_LimitLv": "2", "n_RequireTotalStat": "10", "n_RequireLevel": "10", "n_MaxAbilityPoint": "2", "n_Equip_Upgrade_Limit": "15", "f_Monster_DMG_Multiplier": "0.1", "f_Boss_DMG_Multiplier": "0.1", "f_ALL_STAT_Multiplier": "0.05", "n_limitSlotMagic": "1" }, { "n_LimitLv": "3", "n_RequireTotalStat": "15", "n_RequireLevel": "20", "n_MaxAbilityPoint": "3", "n_Equip_Upgrade_Limit": "20", "f_Monster_DMG_Multiplier": "0.25", "f_Boss_DMG_Multiplier": "0.1", "f_ALL_STAT_Multiplier": "0.065", "n_limitSlotMagic": "2" }, { "n_LimitLv": "4", "n_RequireTotalStat": "20", "n_RequireLevel": "50", "n_MaxAbilityPoint": "4", "n_Equip_Upgrade_Limit": "25", "f_Monster_DMG_Multiplier": "0.3", "f_Boss_DMG_Multiplier": "0.2", "f_ALL_STAT_Multiplier": "0.08", "n_limitSlotMagic": "2" }, { "n_LimitLv": "5", "n_RequireTotalStat": "25", "n_RequireLevel": "100", "n_MaxAbilityPoint": "5", "n_Equip_Upgrade_Limit": "30", "f_Monster_DMG_Multiplier": "0.35", "f_Boss_DMG_Multiplier": "0.2", "f_ALL_STAT_Multiplier": "0.1", "n_limitSlotMagic": "3" }, { "n_LimitLv": "6", "n_RequireTotalStat": "30", "n_RequireLevel": "150", "n_MaxAbilityPoint": "6", "n_Equip_Upgrade_Limit": "35", "f_Monster_DMG_Multiplier": "0.4", "f_Boss_DMG_Multiplier": "0.2", "f_ALL_STAT_Multiplier": "0.12", "n_limitSlotMagic": "3" }, { "n_LimitLv": "7", "n_RequireTotalStat": "35", "n_RequireLevel": "200", "n_MaxAbilityPoint": "7", "n_Equip_Upgrade_Limit": "40", "f_Monster_DMG_Multiplier": "0.45", "f_Boss_DMG_Multiplier": "0.2", "f_ALL_STAT_Multiplier": "0.14", "n_limitSlotMagic": "4" }, { "n_LimitLv": "8", "n_RequireTotalStat": "40", "n_RequireLevel": "250", "n_MaxAbilityPoint": "8", "n_Equip_Upgrade_Limit": "45", "f_Monster_DMG_Multiplier": "0.5", "f_Boss_DMG_Multiplier": "0.2", "f_ALL_STAT_Multiplier": "0.16", "n_limitSlotMagic": "5" }, { "n_LimitLv": "9", "n_RequireTotalStat": "45", "n_RequireLevel": "300", "n_MaxAbilityPoint": "9", "n_Equip_Upgrade_Limit": "50", "f_Monster_DMG_Multiplier": "0.55", "f_Boss_DMG_Multiplier": "0.2", "f_ALL_STAT_Multiplier": "0.18", "n_limitSlotMagic": "6" } ] } function Get_EnchantGradeTable() { return [ { "n_EnchantGrade": "1", "n_OptionLevelMin": "1", "n_OptionLevelMax": "10", "s_Color": "#999999" }, { "n_EnchantGrade": "2", "n_OptionLevelMin": "11", "n_OptionLevelMax": "25", "s_Color": "#00FF00" }, { "n_EnchantGrade": "3", "n_OptionLevelMin": "26", "n_OptionLevelMax": "50", "s_Color": "#87CEEB" }, { "n_EnchantGrade": "4", "n_OptionLevelMin": "51", "n_OptionLevelMax": "80", "s_Color": "#800080" }, { "n_EnchantGrade": "5", "n_OptionLevelMin": "81", "n_OptionLevelMax": "125", "s_Color": "#FFA500" }, { "n_EnchantGrade": "6", "n_OptionLevelMin": "126", "n_OptionLevelMax": "180", "s_Color": "#FFFF00" }, { "n_EnchantGrade": "7", "n_OptionLevelMin": "181", "n_OptionLevelMax": "250", "s_Color": "#8B0000" }, { "n_EnchantGrade": "8", "n_OptionLevelMin": "251", "n_OptionLevelMax": "350", "s_Color": "#FF0000" }, { "n_EnchantGrade": "9", "n_OptionLevelMin": "351", "n_OptionLevelMax": "500", "s_Color": "#FFD700" } ] } function Get_LimitSlotMagicRateTable() { return [ { "n_NeedLimitLv": "1", "n_DropIndex": "9900001", "n_GachaGradeRate1": "5000000", "n_GachaGradeRate2": "3500000", "n_GachaGradeRate3": "1500000", "n_GachaGradeRate4": "0", "n_GachaGradeRate5": "0", "n_GachaGradeRate6": "0", "n_GachaGradeRate7": "0", "n_GachaGradeRate8": "0", "n_GachaGradeRate9": "0" }, { "n_NeedLimitLv": "2", "n_DropIndex": "9900001", "n_GachaGradeRate1": "5000000", "n_GachaGradeRate2": "3500000", "n_GachaGradeRate3": "1500000", "n_GachaGradeRate4": "0", "n_GachaGradeRate5": "0", "n_GachaGradeRate6": "0", "n_GachaGradeRate7": "0", "n_GachaGradeRate8": "0", "n_GachaGradeRate9": "0" }, { "n_NeedLimitLv": "3", "n_DropIndex": "9900001", "n_GachaGradeRate1": "4997764", "n_GachaGradeRate2": "3498130", "n_GachaGradeRate3": "1501224", "n_GachaGradeRate4": "2882", "n_GachaGradeRate5": "0", "n_GachaGradeRate6": "0", "n_GachaGradeRate7": "0", "n_GachaGradeRate8": "0", "n_GachaGradeRate9": "0" }, { "n_NeedLimitLv": "4", "n_DropIndex": "9900001", "n_GachaGradeRate1": "4997764", "n_GachaGradeRate2": "3498130", "n_GachaGradeRate3": "1501224", "n_GachaGradeRate4": "2882", "n_GachaGradeRate5": "0", "n_GachaGradeRate6": "0", "n_GachaGradeRate7": "0", "n_GachaGradeRate8": "0", "n_GachaGradeRate9": "0" }, { "n_NeedLimitLv": "5", "n_DropIndex": "9900001", "n_GachaGradeRate1": "4997764", "n_GachaGradeRate2": "3498130", "n_GachaGradeRate3": "1501224", "n_GachaGradeRate4": "2782", "n_GachaGradeRate5": "100", "n_GachaGradeRate6": "0", "n_GachaGradeRate7": "0", "n_GachaGradeRate8": "0", "n_GachaGradeRate9": "0" }, { "n_NeedLimitLv": "6", "n_DropIndex": "9900001", "n_GachaGradeRate1": "4997764", "n_GachaGradeRate2": "3498130", "n_GachaGradeRate3": "1501224", "n_GachaGradeRate4": "2782", "n_GachaGradeRate5": "200", "n_GachaGradeRate6": "100", "n_GachaGradeRate7": "0", "n_GachaGradeRate8": "0", "n_GachaGradeRate9": "0" }, { "n_NeedLimitLv": "7", "n_DropIndex": "9900001", "n_GachaGradeRate1": "4997764", "n_GachaGradeRate2": "3498130", "n_GachaGradeRate3": "1501224", "n_GachaGradeRate4": "2782", "n_GachaGradeRate5": "300", "n_GachaGradeRate6": "200", "n_GachaGradeRate7": "100", "n_GachaGradeRate8": "0", "n_GachaGradeRate9": "0" }, { "n_NeedLimitLv": "8", "n_DropIndex": "9900001", "n_GachaGradeRate1": "4997764", "n_GachaGradeRate2": "3498130", "n_GachaGradeRate3": "1501224", "n_GachaGradeRate4": "274482", "n_GachaGradeRate5": "40000", "n_GachaGradeRate6": "3000", "n_GachaGradeRate7": "200", "n_GachaGradeRate8": "10", "n_GachaGradeRate9": "0" }, { "n_NeedLimitLv": "9", "n_DropIndex": "9900001", "n_GachaGradeRate1": "4997764", "n_GachaGradeRate2": "3498130", "n_GachaGradeRate3": "1501224", "n_GachaGradeRate4": "2782", "n_GachaGradeRate5": "500", "n_GachaGradeRate6": "400", "n_GachaGradeRate7": "300", "n_GachaGradeRate8": "200", "n_GachaGradeRate9": "100" } ] } function GetRandomGachaGrade(limitLv) { const table = Get_LimitSlotMagicRateTable(); const data = table.find(row => parseInt(row.n_NeedLimitLv) === limitLv); if (!data) return -1; // 유효한 등급(rate > 0)만 뽑기 const rates = []; for (let i = 1; i <= 9; i++) { const key = `n_GachaGradeRate${i}`; const rate = parseInt(data[key]); if (rate > 0) { rates.push({ grade: i, weight: rate }); } } // 총합 const totalWeight = rates.reduce((sum, r) => sum + r.weight, 0); if (totalWeight <= 0) return -1; // 랜덤 추첨 let rand = Math.floor(Math.random() * totalWeight); for (let i = 0; i < rates.length; i++) { if (rand < rates[i].weight) return rates[i].grade; rand -= rates[i].weight; } return -1; } function Get_RandomBagTable() { return [ { "n_DropIndex": "9900001", "n_ItemGrade": "1", "e_ItemType": "Option", "n_ItemId": "330001", "f_DropRate": "0.33", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "9900001", "n_ItemGrade": "1", "e_ItemType": "Option", "n_ItemId": "330002", "f_DropRate": "0.33", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "9900001", "n_ItemGrade": "1", "e_ItemType": "Option", "n_ItemId": "330003", "f_DropRate": "0.34", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "9900001", "n_ItemGrade": "2", "e_ItemType": "Option", "n_ItemId": "330004", "f_DropRate": "0.33", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "9900001", "n_ItemGrade": "2", "e_ItemType": "Option", "n_ItemId": "330005", "f_DropRate": "0.33", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "9900001", "n_ItemGrade": "2", "e_ItemType": "Option", "n_ItemId": "330006", "f_DropRate": "0.34", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "9900001", "n_ItemGrade": "3", "e_ItemType": "Option", "n_ItemId": "330007", "f_DropRate": "0.33", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "9900001", "n_ItemGrade": "3", "e_ItemType": "Option", "n_ItemId": "330008", "f_DropRate": "0.33", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "9900001", "n_ItemGrade": "3", "e_ItemType": "Option", "n_ItemId": "330009", "f_DropRate": "0.34", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "9900002", "n_ItemGrade": "1", "e_ItemType": "Option", "n_ItemId": "330101", "f_DropRate": "0.33", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "9900002", "n_ItemGrade": "1", "e_ItemType": "Option", "n_ItemId": "330102", "f_DropRate": "0.33", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "9900002", "n_ItemGrade": "1", "e_ItemType": "Option", "n_ItemId": "330103", "f_DropRate": "0.34", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "9900002", "n_ItemGrade": "2", "e_ItemType": "Option", "n_ItemId": "330104", "f_DropRate": "0.33", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "9900002", "n_ItemGrade": "2", "e_ItemType": "Option", "n_ItemId": "330105", "f_DropRate": "0.33", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "9900002", "n_ItemGrade": "2", "e_ItemType": "Option", "n_ItemId": "330106", "f_DropRate": "0.34", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "9900002", "n_ItemGrade": "3", "e_ItemType": "Option", "n_ItemId": "330107", "f_DropRate": "0.33", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "9900002", "n_ItemGrade": "3", "e_ItemType": "Option", "n_ItemId": "330108", "f_DropRate": "0.33", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "9900002", "n_ItemGrade": "3", "e_ItemType": "Option", "n_ItemId": "330109", "f_DropRate": "0.34", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "9800001", "n_ItemGrade": "1", "e_ItemType": "Goods", "n_ItemId": "472", "f_DropRate": "0.33", "n_DropCount": "100", "exception": "" }, { "n_DropIndex": "9800001", "n_ItemGrade": "1", "e_ItemType": "Goods", "n_ItemId": "472", "f_DropRate": "0.33", "n_DropCount": "200", "exception": "" }, { "n_DropIndex": "9800001", "n_ItemGrade": "1", "e_ItemType": "Goods", "n_ItemId": "472", "f_DropRate": "0.34", "n_DropCount": "300", "exception": "" }, { "n_DropIndex": "9800001", "n_ItemGrade": "2", "e_ItemType": "Goods", "n_ItemId": "472", "f_DropRate": "0.25", "n_DropCount": "400", "exception": "" }, { "n_DropIndex": "9800001", "n_ItemGrade": "2", "e_ItemType": "Goods", "n_ItemId": "472", "f_DropRate": "0.25", "n_DropCount": "500", "exception": "" }, { "n_DropIndex": "9800001", "n_ItemGrade": "2", "e_ItemType": "Goods", "n_ItemId": "472", "f_DropRate": "0.25", "n_DropCount": "600", "exception": "" }, { "n_DropIndex": "9800001", "n_ItemGrade": "2", "e_ItemType": "Goods", "n_ItemId": "472", "f_DropRate": "0.25", "n_DropCount": "700", "exception": "" }, { "n_DropIndex": "9800001", "n_ItemGrade": "3", "e_ItemType": "Goods", "n_ItemId": "400001", "f_DropRate": "0.25", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "9800001", "n_ItemGrade": "3", "e_ItemType": "Goods", "n_ItemId": "400002", "f_DropRate": "0.25", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "9800001", "n_ItemGrade": "3", "e_ItemType": "Goods", "n_ItemId": "400003", "f_DropRate": "0.25", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "9800001", "n_ItemGrade": "3", "e_ItemType": "Goods", "n_ItemId": "400004", "f_DropRate": "0.25", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "9800001", "n_ItemGrade": "4", "e_ItemType": "Goods", "n_ItemId": "400005", "f_DropRate": "0.25", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "9800001", "n_ItemGrade": "4", "e_ItemType": "Goods", "n_ItemId": "400006", "f_DropRate": "0.25", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "9800001", "n_ItemGrade": "4", "e_ItemType": "Goods", "n_ItemId": "400007", "f_DropRate": "0.25", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "9800001", "n_ItemGrade": "4", "e_ItemType": "Goods", "n_ItemId": "400008", "f_DropRate": "0.25", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "9800001", "n_ItemGrade": "5", "e_ItemType": "Goods", "n_ItemId": "400009", "f_DropRate": "0.33", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "9800001", "n_ItemGrade": "5", "e_ItemType": "Goods", "n_ItemId": "400010", "f_DropRate": "0.34", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "9800001", "n_ItemGrade": "5", "e_ItemType": "Goods", "n_ItemId": "400011", "f_DropRate": "0.33", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "9800001", "n_ItemGrade": "6", "e_ItemType": "Goods", "n_ItemId": "400012", "f_DropRate": "0.33", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "9800001", "n_ItemGrade": "6", "e_ItemType": "Goods", "n_ItemId": "400013", "f_DropRate": "0.33", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "9800001", "n_ItemGrade": "6", "e_ItemType": "Goods", "n_ItemId": "400014", "f_DropRate": "0.34", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "9700001", "n_ItemGrade": "1", "e_ItemType": "Weapon", "n_ItemId": "10101001", "f_DropRate": "0.01", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "9700001", "n_ItemGrade": "2", "e_ItemType": "Weapon", "n_ItemId": "10101006", "f_DropRate": "0.001", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "9700001", "n_ItemGrade": "3", "e_ItemType": "Weapon", "n_ItemId": "10101011", "f_DropRate": "0.0001", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "7001", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "1", "f_DropRate": "0", "n_DropCount": "100", "exception": "광고" }, { "n_DropIndex": "7001", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "2", "f_DropRate": "0", "n_DropCount": "1000", "exception": "광고" }, { "n_DropIndex": "7002", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "101", "f_DropRate": "0", "n_DropCount": "10", "exception": "광고" }, { "n_DropIndex": "7002", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "201", "f_DropRate": "0", "n_DropCount": "20", "exception": "광고" }, { "n_DropIndex": "7011", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "1", "f_DropRate": "0", "n_DropCount": "100", "exception": "광고제거 패키지" }, { "n_DropIndex": "7011", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "3", "f_DropRate": "0", "n_DropCount": "50", "exception": "" }, { "n_DropIndex": "7011", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "2", "f_DropRate": "0", "n_DropCount": "999", "exception": "" }, { "n_DropIndex": "7012", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "1", "f_DropRate": "0", "n_DropCount": "1000", "exception": "젬 패키지" }, { "n_DropIndex": "7012", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "3", "f_DropRate": "0", "n_DropCount": "50", "exception": "" }, { "n_DropIndex": "7012", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "2", "f_DropRate": "0", "n_DropCount": "9999", "exception": "" }, { "n_DropIndex": "7013", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "1", "f_DropRate": "0", "n_DropCount": "10000", "exception": "젬 패키지2" }, { "n_DropIndex": "7013", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "3", "f_DropRate": "0", "n_DropCount": "25", "exception": "" }, { "n_DropIndex": "7013", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "2", "f_DropRate": "0", "n_DropCount": "999999", "exception": "" }, { "n_DropIndex": "7101", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "601", "f_DropRate": "0", "n_DropCount": "1", "exception": "패스1" }, { "n_DropIndex": "7102", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "602", "f_DropRate": "0", "n_DropCount": "1", "exception": "패스2" }, { "n_DropIndex": "7103", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "603", "f_DropRate": "0", "n_DropCount": "1", "exception": "패스3" }, { "n_DropIndex": "7104", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "604", "f_DropRate": "0", "n_DropCount": "1", "exception": "패스4" }, { "n_DropIndex": "7105", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "605", "f_DropRate": "0", "n_DropCount": "1", "exception": "패스5" }, { "n_DropIndex": "7106", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "606", "f_DropRate": "0", "n_DropCount": "1", "exception": "패스6" }, { "n_DropIndex": "7107", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "607", "f_DropRate": "0", "n_DropCount": "1", "exception": "패스7" }, { "n_DropIndex": "7108", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "608", "f_DropRate": "0", "n_DropCount": "1", "exception": "패스8" }, { "n_DropIndex": "7109", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "609", "f_DropRate": "0", "n_DropCount": "1", "exception": "패스9" }, { "n_DropIndex": "7110", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "610", "f_DropRate": "0", "n_DropCount": "1", "exception": "패스10" }, { "n_DropIndex": "7201", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "1", "f_DropRate": "0", "n_DropCount": "100", "exception": "광고 젬" }, { "n_DropIndex": "7211", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "101", "f_DropRate": "0", "n_DropCount": "10", "exception": "" }, { "n_DropIndex": "7212", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "102", "f_DropRate": "0", "n_DropCount": "10", "exception": "" }, { "n_DropIndex": "7213", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "103", "f_DropRate": "0", "n_DropCount": "10", "exception": "" }, { "n_DropIndex": "7214", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "104", "f_DropRate": "0", "n_DropCount": "10", "exception": "" }, { "n_DropIndex": "7215", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "105", "f_DropRate": "0", "n_DropCount": "10", "exception": "" }, { "n_DropIndex": "7216", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "106", "f_DropRate": "0", "n_DropCount": "10", "exception": "" }, { "n_DropIndex": "7217", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "201", "f_DropRate": "0", "n_DropCount": "5", "exception": "" }, { "n_DropIndex": "7218", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "202", "f_DropRate": "0", "n_DropCount": "5", "exception": "" }, { "n_DropIndex": "7219", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "203", "f_DropRate": "0", "n_DropCount": "5", "exception": "" }, { "n_DropIndex": "7220", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "204", "f_DropRate": "0", "n_DropCount": "5", "exception": "" }, { "n_DropIndex": "7221", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "401", "f_DropRate": "0", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "7222", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "402", "f_DropRate": "0", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "7223", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "403", "f_DropRate": "0", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "7224", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "404", "f_DropRate": "0", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "7301", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "1", "f_DropRate": "0", "n_DropCount": "50", "exception": "광고 젬" }, { "n_DropIndex": "7311", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "3", "f_DropRate": "0", "n_DropCount": "1000", "exception": "상점 보석1" }, { "n_DropIndex": "7311", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "3", "f_DropRate": "0", "n_DropCount": "100", "exception": "상점 첫 구매 보석1" }, { "n_DropIndex": "7312", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "3", "f_DropRate": "0", "n_DropCount": "3000", "exception": "상점 보석2" }, { "n_DropIndex": "7312", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "3", "f_DropRate": "0", "n_DropCount": "300", "exception": "상점 첫 구매 보석2" }, { "n_DropIndex": "7313", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "3", "f_DropRate": "0", "n_DropCount": "5000", "exception": "상점 보석3" }, { "n_DropIndex": "7313", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "3", "f_DropRate": "0", "n_DropCount": "500", "exception": "상점 첫 구매 보석3" }, { "n_DropIndex": "7314", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "3", "f_DropRate": "0", "n_DropCount": "10000", "exception": "상점 보석4" }, { "n_DropIndex": "7314", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "3", "f_DropRate": "0", "n_DropCount": "1000", "exception": "상점 첫 구매 보석4" }, { "n_DropIndex": "7315", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "3", "f_DropRate": "0", "n_DropCount": "30000", "exception": "상점 보석5" }, { "n_DropIndex": "7315", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "3", "f_DropRate": "0", "n_DropCount": "3000", "exception": "상점 첫 구매 보석5" }, { "n_DropIndex": "7321", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "2", "f_DropRate": "0", "n_DropCount": "1000", "exception": "광고 골드" }, { "n_DropIndex": "7331", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "2", "f_DropRate": "0", "n_DropCount": "10000", "exception": "상점 골드1" }, { "n_DropIndex": "7332", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "2", "f_DropRate": "0", "n_DropCount": "100000", "exception": "상점 골드2" }, { "n_DropIndex": "7333", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "2", "f_DropRate": "0", "n_DropCount": "1000000", "exception": "상점 골드3" }, { "n_DropIndex": "7401", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "101", "f_DropRate": "0", "n_DropCount": "15", "exception": "" }, { "n_DropIndex": "7402", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "102", "f_DropRate": "0", "n_DropCount": "15", "exception": "" }, { "n_DropIndex": "7403", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "103", "f_DropRate": "0", "n_DropCount": "15", "exception": "" }, { "n_DropIndex": "7404", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "104", "f_DropRate": "0", "n_DropCount": "15", "exception": "" }, { "n_DropIndex": "7405", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "105", "f_DropRate": "0", "n_DropCount": "15", "exception": "" }, { "n_DropIndex": "7406", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "106", "f_DropRate": "0", "n_DropCount": "15", "exception": "" }, { "n_DropIndex": "7407", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "201", "f_DropRate": "0", "n_DropCount": "7", "exception": "" }, { "n_DropIndex": "7408", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "202", "f_DropRate": "0", "n_DropCount": "7", "exception": "" }, { "n_DropIndex": "7409", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "203", "f_DropRate": "0", "n_DropCount": "7", "exception": "" }, { "n_DropIndex": "7410", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "204", "f_DropRate": "0", "n_DropCount": "7", "exception": "" }, { "n_DropIndex": "7411", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "401", "f_DropRate": "0", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "7412", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "402", "f_DropRate": "0", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "7413", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "403", "f_DropRate": "0", "n_DropCount": "1", "exception": "" }, { "n_DropIndex": "7414", "n_ItemGrade": "1", "e_ItemType": "Shop", "n_ItemId": "404", "f_DropRate": "0", "n_DropCount": "1", "exception": "" } ] } function Get_RandomItemId(dropIndex, grade) { var randombaTable = Get_RandomBagTable(); const items = randombaTable.filter(f => f.n_DropIndex == dropIndex && f.n_ItemGrade == grade ); if (items.length === 0) return null; // 가중치 누적합 const weights = items.map(f => parseFloat(f.f_DropRate)); const total = weights.reduce((sum, w) => sum + w, 0); let rand = Math.random() * total; for (let i = 0; i < items.length; i++) { if (rand < weights[i]) { return items[i].n_ItemId; } rand -= weights[i]; } return null; } function Get_EquipCraftingTable() { return [ { "n_CraftingItemID": "10101001", "n_MainGoodsID": "201", "n_MainGoodsCount": "1", "n_MaterialValue1": "1", "n_MaterialCount1": "1", "n_MaterialValue2": "202", "n_MaterialCount2": "10", "n_MaterialValue3": "0", "n_MaterialCount3": "0" }, { "n_CraftingItemID": "10101002", "n_MainGoodsID": "201", "n_MainGoodsCount": "2", "n_MaterialValue1": "10101001", "n_MaterialCount1": "1", "n_MaterialValue2": "202", "n_MaterialCount2": "20", "n_MaterialValue3": "203", "n_MaterialCount3": "10" }, { "n_CraftingItemID": "10101003", "n_MainGoodsID": "201", "n_MainGoodsCount": "3", "n_MaterialValue1": "10100002", "n_MaterialCount1": "15", "n_MaterialValue2": "202", "n_MaterialCount2": "8888", "n_MaterialValue3": "0", "n_MaterialCount3": "0" }, { "n_CraftingItemID": "10301001", "n_MainGoodsID": "201", "n_MainGoodsCount": "4", "n_MaterialValue1": "201", "n_MaterialCount1": "10", "n_MaterialValue2": "202", "n_MaterialCount2": "20", "n_MaterialValue3": "0", "n_MaterialCount3": "0" }, { "n_CraftingItemID": "10201001", "n_MainGoodsID": "201", "n_MainGoodsCount": "4", "n_MaterialValue1": "1", "n_MaterialCount1": "1", "n_MaterialValue2": "202", "n_MaterialCount2": "11", "n_MaterialValue3": "0", "n_MaterialCount3": "0" }, { "n_CraftingItemID": "10003", "n_MainGoodsID": "201", "n_MainGoodsCount": "5", "n_MaterialValue1": "10100003", "n_MaterialCount1": "3", "n_MaterialValue2": "202", "n_MaterialCount2": "1000", "n_MaterialValue3": "203", "n_MaterialCount3": "100" }, { "n_CraftingItemID": "10004", "n_MainGoodsID": "201", "n_MainGoodsCount": "6", "n_MaterialValue1": "0", "n_MaterialCount1": "0", "n_MaterialValue2": "0", "n_MaterialCount2": "0", "n_MaterialValue3": "0", "n_MaterialCount3": "0" }, { "n_CraftingItemID": "101", "n_MainGoodsID": "201", "n_MainGoodsCount": "7", "n_MaterialValue1": "10200001", "n_MaterialCount1": "5", "n_MaterialValue2": "202", "n_MaterialCount2": "1000", "n_MaterialValue3": "0", "n_MaterialCount3": "0" }, { "n_CraftingItemID": "102", "n_MainGoodsID": "201", "n_MainGoodsCount": "8", "n_MaterialValue1": "10200001", "n_MaterialCount1": "5", "n_MaterialValue2": "202", "n_MaterialCount2": "1000", "n_MaterialValue3": "0", "n_MaterialCount3": "0" } ] } function Get_EquipmentTable() { return [ { "n_EquipID": "10101001", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "Wand 01 Blue", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "100", "e_AbilityType2": "STR", "n_AbilityValue2": "100", "e_AbilityType3": "CRI_DMG_Multiplier", "n_AbilityValue3": "500", "n_DecompositionReward": "101", "n_DecompositionCount": "1" }, { "n_EquipID": "10101002", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "Wand 01 Green", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "100", "e_AbilityType2": "STR", "n_AbilityValue2": "100", "e_AbilityType3": "CRI", "n_AbilityValue3": "100", "n_DecompositionReward": "101", "n_DecompositionCount": "1" }, { "n_EquipID": "10101003", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "Wand 01 Purple", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "100", "e_AbilityType2": "STR", "n_AbilityValue2": "100", "e_AbilityType3": "PIERCING_Multiplier", "n_AbilityValue3": "250", "n_DecompositionReward": "101", "n_DecompositionCount": "1" }, { "n_EquipID": "10101004", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "100", "e_AbilityType2": "STR", "n_AbilityValue2": "100", "e_AbilityType3": "STR_Multiplier", "n_AbilityValue3": "100", "n_DecompositionReward": "101", "n_DecompositionCount": "1" }, { "n_EquipID": "10101005", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "300", "e_AbilityType2": "STR", "n_AbilityValue2": "250", "e_AbilityType3": "CRI_DMG_Multiplier", "n_AbilityValue3": "750", "n_DecompositionReward": "101", "n_DecompositionCount": "6" }, { "n_EquipID": "10101006", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "300", "e_AbilityType2": "STR", "n_AbilityValue2": "250", "e_AbilityType3": "CRI", "n_AbilityValue3": "150", "n_DecompositionReward": "101", "n_DecompositionCount": "6" }, { "n_EquipID": "10101007", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "300", "e_AbilityType2": "STR", "n_AbilityValue2": "250", "e_AbilityType3": "PIERCING_Multiplier", "n_AbilityValue3": "300", "n_DecompositionReward": "101", "n_DecompositionCount": "6" }, { "n_EquipID": "10101008", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "300", "e_AbilityType2": "STR", "n_AbilityValue2": "250", "e_AbilityType3": "STR_Multiplier", "n_AbilityValue3": "200", "n_DecompositionReward": "101", "n_DecompositionCount": "6" }, { "n_EquipID": "10101009", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "Wand 02 Blue", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "1000", "e_AbilityType2": "STR", "n_AbilityValue2": "625", "e_AbilityType3": "CRI_DMG_Multiplier", "n_AbilityValue3": "1000", "n_DecompositionReward": "101", "n_DecompositionCount": "14" }, { "n_EquipID": "10101010", "s_ItemPrefab_LH": "Assets/Res_Addr/Weapon/Shield.prefab", "s_ItemPrefab_RH": "Assets/Res_Addr/Weapon/Mace.prefab", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "1000", "e_AbilityType2": "STR", "n_AbilityValue2": "625", "e_AbilityType3": "CRI", "n_AbilityValue3": "200", "n_DecompositionReward": "101", "n_DecompositionCount": "14" }, { "n_EquipID": "10101011", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "1000", "e_AbilityType2": "STR", "n_AbilityValue2": "625", "e_AbilityType3": "PIERCING_Multiplier", "n_AbilityValue3": "350", "n_DecompositionReward": "101", "n_DecompositionCount": "14" }, { "n_EquipID": "10101012", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "1000", "e_AbilityType2": "STR", "n_AbilityValue2": "625", "e_AbilityType3": "STR_Multiplier", "n_AbilityValue3": "300", "n_DecompositionReward": "101", "n_DecompositionCount": "14" }, { "n_EquipID": "10101013", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "3000", "e_AbilityType2": "STR", "n_AbilityValue2": "1562", "e_AbilityType3": "CRI_DMG_Multiplier", "n_AbilityValue3": "1250", "n_DecompositionReward": "101", "n_DecompositionCount": "25" }, { "n_EquipID": "10101014", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "3000", "e_AbilityType2": "STR", "n_AbilityValue2": "1562", "e_AbilityType3": "CRI", "n_AbilityValue3": "250", "n_DecompositionReward": "101", "n_DecompositionCount": "25" }, { "n_EquipID": "10101015", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "3000", "e_AbilityType2": "STR", "n_AbilityValue2": "1562", "e_AbilityType3": "PIERCING_Multiplier", "n_AbilityValue3": "400", "n_DecompositionReward": "101", "n_DecompositionCount": "25" }, { "n_EquipID": "10101016", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "3000", "e_AbilityType2": "STR", "n_AbilityValue2": "1562", "e_AbilityType3": "STR_Multiplier", "n_AbilityValue3": "400", "n_DecompositionReward": "101", "n_DecompositionCount": "25" }, { "n_EquipID": "10101017", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "10000", "e_AbilityType2": "STR", "n_AbilityValue2": "3905", "e_AbilityType3": "CRI_DMG_Multiplier", "n_AbilityValue3": "1500", "n_DecompositionReward": "101", "n_DecompositionCount": "41" }, { "n_EquipID": "10101018", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "10000", "e_AbilityType2": "STR", "n_AbilityValue2": "3905", "e_AbilityType3": "CRI", "n_AbilityValue3": "300", "n_DecompositionReward": "101", "n_DecompositionCount": "41" }, { "n_EquipID": "10101019", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "10000", "e_AbilityType2": "STR", "n_AbilityValue2": "3905", "e_AbilityType3": "PIERCING_Multiplier", "n_AbilityValue3": "450", "n_DecompositionReward": "101", "n_DecompositionCount": "41" }, { "n_EquipID": "10101020", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "10000", "e_AbilityType2": "STR", "n_AbilityValue2": "3905", "e_AbilityType3": "STR_Multiplier", "n_AbilityValue3": "500", "n_DecompositionReward": "101", "n_DecompositionCount": "41" }, { "n_EquipID": "10101021", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "30000", "e_AbilityType2": "STR", "n_AbilityValue2": "9762", "e_AbilityType3": "CRI_DMG_Multiplier", "n_AbilityValue3": "1750", "n_DecompositionReward": "101", "n_DecompositionCount": "60" }, { "n_EquipID": "10101022", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "30000", "e_AbilityType2": "STR", "n_AbilityValue2": "9762", "e_AbilityType3": "CRI", "n_AbilityValue3": "350", "n_DecompositionReward": "101", "n_DecompositionCount": "60" }, { "n_EquipID": "10101023", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "30000", "e_AbilityType2": "STR", "n_AbilityValue2": "9762", "e_AbilityType3": "PIERCING_Multiplier", "n_AbilityValue3": "500", "n_DecompositionReward": "101", "n_DecompositionCount": "60" }, { "n_EquipID": "10101024", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "30000", "e_AbilityType2": "STR", "n_AbilityValue2": "9762", "e_AbilityType3": "STR_Multiplier", "n_AbilityValue3": "600", "n_DecompositionReward": "101", "n_DecompositionCount": "60" }, { "n_EquipID": "10101025", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "100000", "e_AbilityType2": "STR", "n_AbilityValue2": "24405", "e_AbilityType3": "CRI_DMG_Multiplier", "n_AbilityValue3": "2000", "n_DecompositionReward": "101", "n_DecompositionCount": "84" }, { "n_EquipID": "10101026", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "100000", "e_AbilityType2": "STR", "n_AbilityValue2": "24405", "e_AbilityType3": "CRI", "n_AbilityValue3": "400", "n_DecompositionReward": "101", "n_DecompositionCount": "84" }, { "n_EquipID": "10101027", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "100000", "e_AbilityType2": "STR", "n_AbilityValue2": "24405", "e_AbilityType3": "PIERCING_Multiplier", "n_AbilityValue3": "550", "n_DecompositionReward": "101", "n_DecompositionCount": "84" }, { "n_EquipID": "10101028", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "100000", "e_AbilityType2": "STR", "n_AbilityValue2": "24405", "e_AbilityType3": "STR_Multiplier", "n_AbilityValue3": "700", "n_DecompositionReward": "101", "n_DecompositionCount": "84" }, { "n_EquipID": "10101029", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "300000", "e_AbilityType2": "STR", "n_AbilityValue2": "61012", "e_AbilityType3": "CRI_DMG_Multiplier", "n_AbilityValue3": "2250", "n_DecompositionReward": "101", "n_DecompositionCount": "111" }, { "n_EquipID": "10101030", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "300000", "e_AbilityType2": "STR", "n_AbilityValue2": "61012", "e_AbilityType3": "CRI", "n_AbilityValue3": "450", "n_DecompositionReward": "101", "n_DecompositionCount": "111" }, { "n_EquipID": "10101031", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "300000", "e_AbilityType2": "STR", "n_AbilityValue2": "61012", "e_AbilityType3": "PIERCING_Multiplier", "n_AbilityValue3": "600", "n_DecompositionReward": "101", "n_DecompositionCount": "111" }, { "n_EquipID": "10101032", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "300000", "e_AbilityType2": "STR", "n_AbilityValue2": "61012", "e_AbilityType3": "STR_Multiplier", "n_AbilityValue3": "800", "n_DecompositionReward": "101", "n_DecompositionCount": "111" }, { "n_EquipID": "10101033", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "1000000", "e_AbilityType2": "STR", "n_AbilityValue2": "152530", "e_AbilityType3": "CRI_DMG_Multiplier", "n_AbilityValue3": "1000", "n_DecompositionReward": "101", "n_DecompositionCount": "142" }, { "n_EquipID": "10101034", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "1000000", "e_AbilityType2": "STR", "n_AbilityValue2": "152530", "e_AbilityType3": "CRI", "n_AbilityValue3": "2500", "n_DecompositionReward": "101", "n_DecompositionCount": "142" }, { "n_EquipID": "10101035", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "1000000", "e_AbilityType2": "STR", "n_AbilityValue2": "152530", "e_AbilityType3": "PIERCING_Multiplier", "n_AbilityValue3": "2500", "n_DecompositionReward": "101", "n_DecompositionCount": "142" }, { "n_EquipID": "10102001", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "100", "e_AbilityType2": "DEX", "n_AbilityValue2": "100", "e_AbilityType3": "CRI_DMG_Multiplier", "n_AbilityValue3": "500", "n_DecompositionReward": "101", "n_DecompositionCount": "1" }, { "n_EquipID": "10102002", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "100", "e_AbilityType2": "DEX", "n_AbilityValue2": "100", "e_AbilityType3": "CRI", "n_AbilityValue3": "100", "n_DecompositionReward": "101", "n_DecompositionCount": "1" }, { "n_EquipID": "10102003", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "100", "e_AbilityType2": "DEX", "n_AbilityValue2": "100", "e_AbilityType3": "ATK_SPD_Multiplier", "n_AbilityValue3": "250", "n_DecompositionReward": "101", "n_DecompositionCount": "1" }, { "n_EquipID": "10102004", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "100", "e_AbilityType2": "DEX", "n_AbilityValue2": "100", "e_AbilityType3": "DEX_Multiplier", "n_AbilityValue3": "100", "n_DecompositionReward": "101", "n_DecompositionCount": "1" }, { "n_EquipID": "10102005", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "300", "e_AbilityType2": "DEX", "n_AbilityValue2": "250", "e_AbilityType3": "CRI_DMG_Multiplier", "n_AbilityValue3": "750", "n_DecompositionReward": "101", "n_DecompositionCount": "6" }, { "n_EquipID": "10102006", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "300", "e_AbilityType2": "DEX", "n_AbilityValue2": "250", "e_AbilityType3": "CRI", "n_AbilityValue3": "150", "n_DecompositionReward": "101", "n_DecompositionCount": "6" }, { "n_EquipID": "10102007", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "300", "e_AbilityType2": "DEX", "n_AbilityValue2": "250", "e_AbilityType3": "ATK_SPD_Multiplier", "n_AbilityValue3": "300", "n_DecompositionReward": "101", "n_DecompositionCount": "6" }, { "n_EquipID": "10102008", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "300", "e_AbilityType2": "DEX", "n_AbilityValue2": "250", "e_AbilityType3": "DEX_Multiplier", "n_AbilityValue3": "200", "n_DecompositionReward": "101", "n_DecompositionCount": "6" }, { "n_EquipID": "10102009", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "1000", "e_AbilityType2": "DEX", "n_AbilityValue2": "625", "e_AbilityType3": "CRI_DMG_Multiplier", "n_AbilityValue3": "1000", "n_DecompositionReward": "101", "n_DecompositionCount": "14" }, { "n_EquipID": "10102010", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "1000", "e_AbilityType2": "DEX", "n_AbilityValue2": "625", "e_AbilityType3": "CRI", "n_AbilityValue3": "200", "n_DecompositionReward": "101", "n_DecompositionCount": "14" }, { "n_EquipID": "10102011", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "1000", "e_AbilityType2": "DEX", "n_AbilityValue2": "625", "e_AbilityType3": "ATK_SPD_Multiplier", "n_AbilityValue3": "350", "n_DecompositionReward": "101", "n_DecompositionCount": "14" }, { "n_EquipID": "10102012", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "1000", "e_AbilityType2": "DEX", "n_AbilityValue2": "625", "e_AbilityType3": "DEX_Multiplier", "n_AbilityValue3": "300", "n_DecompositionReward": "101", "n_DecompositionCount": "14" }, { "n_EquipID": "10102013", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "3000", "e_AbilityType2": "DEX", "n_AbilityValue2": "1562", "e_AbilityType3": "CRI_DMG_Multiplier", "n_AbilityValue3": "1250", "n_DecompositionReward": "101", "n_DecompositionCount": "25" }, { "n_EquipID": "10102014", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "3000", "e_AbilityType2": "DEX", "n_AbilityValue2": "1562", "e_AbilityType3": "CRI", "n_AbilityValue3": "250", "n_DecompositionReward": "101", "n_DecompositionCount": "25" }, { "n_EquipID": "10102015", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "3000", "e_AbilityType2": "DEX", "n_AbilityValue2": "1562", "e_AbilityType3": "ATK_SPD_Multiplier", "n_AbilityValue3": "400", "n_DecompositionReward": "101", "n_DecompositionCount": "25" }, { "n_EquipID": "10102016", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "3000", "e_AbilityType2": "DEX", "n_AbilityValue2": "1562", "e_AbilityType3": "DEX_Multiplier", "n_AbilityValue3": "400", "n_DecompositionReward": "101", "n_DecompositionCount": "25" }, { "n_EquipID": "10102017", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "10000", "e_AbilityType2": "DEX", "n_AbilityValue2": "3905", "e_AbilityType3": "CRI_DMG_Multiplier", "n_AbilityValue3": "1500", "n_DecompositionReward": "101", "n_DecompositionCount": "41" }, { "n_EquipID": "10102018", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "10000", "e_AbilityType2": "DEX", "n_AbilityValue2": "3905", "e_AbilityType3": "CRI", "n_AbilityValue3": "300", "n_DecompositionReward": "101", "n_DecompositionCount": "41" }, { "n_EquipID": "10102019", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "10000", "e_AbilityType2": "DEX", "n_AbilityValue2": "3905", "e_AbilityType3": "ATK_SPD_Multiplier", "n_AbilityValue3": "450", "n_DecompositionReward": "101", "n_DecompositionCount": "41" }, { "n_EquipID": "10102020", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "10000", "e_AbilityType2": "DEX", "n_AbilityValue2": "3905", "e_AbilityType3": "DEX_Multiplier", "n_AbilityValue3": "500", "n_DecompositionReward": "101", "n_DecompositionCount": "41" }, { "n_EquipID": "10102021", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "30000", "e_AbilityType2": "DEX", "n_AbilityValue2": "9762", "e_AbilityType3": "CRI_DMG_Multiplier", "n_AbilityValue3": "1750", "n_DecompositionReward": "101", "n_DecompositionCount": "60" }, { "n_EquipID": "10102022", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "30000", "e_AbilityType2": "DEX", "n_AbilityValue2": "9762", "e_AbilityType3": "CRI", "n_AbilityValue3": "350", "n_DecompositionReward": "101", "n_DecompositionCount": "60" }, { "n_EquipID": "10102023", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "30000", "e_AbilityType2": "DEX", "n_AbilityValue2": "9762", "e_AbilityType3": "ATK_SPD_Multiplier", "n_AbilityValue3": "500", "n_DecompositionReward": "101", "n_DecompositionCount": "60" }, { "n_EquipID": "10102024", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "30000", "e_AbilityType2": "DEX", "n_AbilityValue2": "9762", "e_AbilityType3": "DEX_Multiplier", "n_AbilityValue3": "600", "n_DecompositionReward": "101", "n_DecompositionCount": "60" }, { "n_EquipID": "10102025", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "100000", "e_AbilityType2": "DEX", "n_AbilityValue2": "24405", "e_AbilityType3": "CRI_DMG_Multiplier", "n_AbilityValue3": "2000", "n_DecompositionReward": "101", "n_DecompositionCount": "84" }, { "n_EquipID": "10102026", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "100000", "e_AbilityType2": "DEX", "n_AbilityValue2": "24405", "e_AbilityType3": "CRI", "n_AbilityValue3": "400", "n_DecompositionReward": "101", "n_DecompositionCount": "84" }, { "n_EquipID": "10102027", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "100000", "e_AbilityType2": "DEX", "n_AbilityValue2": "24405", "e_AbilityType3": "ATK_SPD_Multiplier", "n_AbilityValue3": "550", "n_DecompositionReward": "101", "n_DecompositionCount": "84" }, { "n_EquipID": "10102028", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "100000", "e_AbilityType2": "DEX", "n_AbilityValue2": "24405", "e_AbilityType3": "DEX_Multiplier", "n_AbilityValue3": "700", "n_DecompositionReward": "101", "n_DecompositionCount": "84" }, { "n_EquipID": "10102029", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "300000", "e_AbilityType2": "DEX", "n_AbilityValue2": "61012", "e_AbilityType3": "CRI_DMG_Multiplier", "n_AbilityValue3": "2250", "n_DecompositionReward": "101", "n_DecompositionCount": "111" }, { "n_EquipID": "10102030", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "300000", "e_AbilityType2": "DEX", "n_AbilityValue2": "61012", "e_AbilityType3": "CRI", "n_AbilityValue3": "450", "n_DecompositionReward": "101", "n_DecompositionCount": "111" }, { "n_EquipID": "10102031", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "300000", "e_AbilityType2": "DEX", "n_AbilityValue2": "61012", "e_AbilityType3": "ATK_SPD_Multiplier", "n_AbilityValue3": "600", "n_DecompositionReward": "101", "n_DecompositionCount": "111" }, { "n_EquipID": "10102032", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "300000", "e_AbilityType2": "DEX", "n_AbilityValue2": "61012", "e_AbilityType3": "DEX_Multiplier", "n_AbilityValue3": "800", "n_DecompositionReward": "101", "n_DecompositionCount": "111" }, { "n_EquipID": "10102033", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "1000000", "e_AbilityType2": "DEX", "n_AbilityValue2": "152530", "e_AbilityType3": "CRI_DMG_Multiplier", "n_AbilityValue3": "1000", "n_DecompositionReward": "101", "n_DecompositionCount": "142" }, { "n_EquipID": "10102034", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "1000000", "e_AbilityType2": "DEX", "n_AbilityValue2": "152530", "e_AbilityType3": "CRI", "n_AbilityValue3": "2500", "n_DecompositionReward": "101", "n_DecompositionCount": "142" }, { "n_EquipID": "10102035", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics", "e_AbilityType1": "ATK", "n_AbilityValue1": "1000000", "e_AbilityType2": "DEX", "n_AbilityValue2": "152530", "e_AbilityType3": "ATK_SPD_Multiplier", "n_AbilityValue3": "2500", "n_DecompositionReward": "101", "n_DecompositionCount": "142" }, { "n_EquipID": "10103001", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "e_AbilityType1": "ATK", "n_AbilityValue1": "100", "e_AbilityType2": "INT", "n_AbilityValue2": "100", "e_AbilityType3": "M_CRI_DMG_Multiplier", "n_AbilityValue3": "500", "n_DecompositionReward": "101", "n_DecompositionCount": "1" }, { "n_EquipID": "10103002", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "e_AbilityType1": "ATK", "n_AbilityValue1": "100", "e_AbilityType2": "INT", "n_AbilityValue2": "100", "e_AbilityType3": "M_CRI", "n_AbilityValue3": "100", "n_DecompositionReward": "101", "n_DecompositionCount": "1" }, { "n_EquipID": "10103003", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "e_AbilityType1": "ATK", "n_AbilityValue1": "100", "e_AbilityType2": "INT", "n_AbilityValue2": "100", "e_AbilityType3": "SKILL_Multiplier", "n_AbilityValue3": "250", "n_DecompositionReward": "101", "n_DecompositionCount": "1" }, { "n_EquipID": "10103004", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "e_AbilityType1": "ATK", "n_AbilityValue1": "100", "e_AbilityType2": "INT", "n_AbilityValue2": "100", "e_AbilityType3": "INT_Multiplier", "n_AbilityValue3": "100", "n_DecompositionReward": "101", "n_DecompositionCount": "1" }, { "n_EquipID": "10103005", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "e_AbilityType1": "ATK", "n_AbilityValue1": "300", "e_AbilityType2": "INT", "n_AbilityValue2": "250", "e_AbilityType3": "M_CRI_DMG_Multiplier", "n_AbilityValue3": "750", "n_DecompositionReward": "101", "n_DecompositionCount": "6" }, { "n_EquipID": "10103006", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "e_AbilityType1": "ATK", "n_AbilityValue1": "300", "e_AbilityType2": "INT", "n_AbilityValue2": "250", "e_AbilityType3": "M_CRI", "n_AbilityValue3": "150", "n_DecompositionReward": "101", "n_DecompositionCount": "6" }, { "n_EquipID": "10103007", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "e_AbilityType1": "ATK", "n_AbilityValue1": "300", "e_AbilityType2": "INT", "n_AbilityValue2": "250", "e_AbilityType3": "SKILL_Multiplier", "n_AbilityValue3": "300", "n_DecompositionReward": "101", "n_DecompositionCount": "6" }, { "n_EquipID": "10103008", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "e_AbilityType1": "ATK", "n_AbilityValue1": "300", "e_AbilityType2": "INT", "n_AbilityValue2": "250", "e_AbilityType3": "INT_Multiplier", "n_AbilityValue3": "200", "n_DecompositionReward": "101", "n_DecompositionCount": "6" }, { "n_EquipID": "10103009", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "e_AbilityType1": "ATK", "n_AbilityValue1": "1000", "e_AbilityType2": "INT", "n_AbilityValue2": "625", "e_AbilityType3": "M_CRI_DMG_Multiplier", "n_AbilityValue3": "1000", "n_DecompositionReward": "101", "n_DecompositionCount": "14" }, { "n_EquipID": "10103010", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "e_AbilityType1": "ATK", "n_AbilityValue1": "1000", "e_AbilityType2": "INT", "n_AbilityValue2": "625", "e_AbilityType3": "M_CRI", "n_AbilityValue3": "200", "n_DecompositionReward": "101", "n_DecompositionCount": "14" }, { "n_EquipID": "10103011", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "e_AbilityType1": "ATK", "n_AbilityValue1": "1000", "e_AbilityType2": "INT", "n_AbilityValue2": "625", "e_AbilityType3": "SKILL_Multiplier", "n_AbilityValue3": "350", "n_DecompositionReward": "101", "n_DecompositionCount": "14" }, { "n_EquipID": "10103012", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "e_AbilityType1": "ATK", "n_AbilityValue1": "1000", "e_AbilityType2": "INT", "n_AbilityValue2": "625", "e_AbilityType3": "INT_Multiplier", "n_AbilityValue3": "300", "n_DecompositionReward": "101", "n_DecompositionCount": "14" }, { "n_EquipID": "10103013", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "e_AbilityType1": "ATK", "n_AbilityValue1": "3000", "e_AbilityType2": "INT", "n_AbilityValue2": "1562", "e_AbilityType3": "M_CRI_DMG_Multiplier", "n_AbilityValue3": "1250", "n_DecompositionReward": "101", "n_DecompositionCount": "25" }, { "n_EquipID": "10103014", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "e_AbilityType1": "ATK", "n_AbilityValue1": "3000", "e_AbilityType2": "INT", "n_AbilityValue2": "1562", "e_AbilityType3": "M_CRI", "n_AbilityValue3": "250", "n_DecompositionReward": "101", "n_DecompositionCount": "25" }, { "n_EquipID": "10103015", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "e_AbilityType1": "ATK", "n_AbilityValue1": "3000", "e_AbilityType2": "INT", "n_AbilityValue2": "1562", "e_AbilityType3": "SKILL_Multiplier", "n_AbilityValue3": "400", "n_DecompositionReward": "101", "n_DecompositionCount": "25" }, { "n_EquipID": "10103016", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "e_AbilityType1": "ATK", "n_AbilityValue1": "3000", "e_AbilityType2": "INT", "n_AbilityValue2": "1562", "e_AbilityType3": "INT_Multiplier", "n_AbilityValue3": "400", "n_DecompositionReward": "101", "n_DecompositionCount": "25" }, { "n_EquipID": "10103017", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "e_AbilityType1": "ATK", "n_AbilityValue1": "10000", "e_AbilityType2": "INT", "n_AbilityValue2": "3905", "e_AbilityType3": "M_CRI_DMG_Multiplier", "n_AbilityValue3": "1500", "n_DecompositionReward": "101", "n_DecompositionCount": "41" }, { "n_EquipID": "10103018", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "e_AbilityType1": "ATK", "n_AbilityValue1": "10000", "e_AbilityType2": "INT", "n_AbilityValue2": "3905", "e_AbilityType3": "M_CRI", "n_AbilityValue3": "300", "n_DecompositionReward": "101", "n_DecompositionCount": "41" }, { "n_EquipID": "10103019", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "e_AbilityType1": "ATK", "n_AbilityValue1": "10000", "e_AbilityType2": "INT", "n_AbilityValue2": "3905", "e_AbilityType3": "SKILL_Multiplier", "n_AbilityValue3": "450", "n_DecompositionReward": "101", "n_DecompositionCount": "41" }, { "n_EquipID": "10103020", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "e_AbilityType1": "ATK", "n_AbilityValue1": "10000", "e_AbilityType2": "INT", "n_AbilityValue2": "3905", "e_AbilityType3": "INT_Multiplier", "n_AbilityValue3": "500", "n_DecompositionReward": "101", "n_DecompositionCount": "41" }, { "n_EquipID": "10103021", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "e_AbilityType1": "ATK", "n_AbilityValue1": "30000", "e_AbilityType2": "INT", "n_AbilityValue2": "9762", "e_AbilityType3": "M_CRI_DMG_Multiplier", "n_AbilityValue3": "1750", "n_DecompositionReward": "101", "n_DecompositionCount": "60" }, { "n_EquipID": "10103022", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "e_AbilityType1": "ATK", "n_AbilityValue1": "30000", "e_AbilityType2": "INT", "n_AbilityValue2": "9762", "e_AbilityType3": "M_CRI", "n_AbilityValue3": "350", "n_DecompositionReward": "101", "n_DecompositionCount": "60" }, { "n_EquipID": "10103023", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "e_AbilityType1": "ATK", "n_AbilityValue1": "30000", "e_AbilityType2": "INT", "n_AbilityValue2": "9762", "e_AbilityType3": "SKILL_Multiplier", "n_AbilityValue3": "500", "n_DecompositionReward": "101", "n_DecompositionCount": "60" }, { "n_EquipID": "10103024", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "e_AbilityType1": "ATK", "n_AbilityValue1": "30000", "e_AbilityType2": "INT", "n_AbilityValue2": "9762", "e_AbilityType3": "INT_Multiplier", "n_AbilityValue3": "600", "n_DecompositionReward": "101", "n_DecompositionCount": "60" }, { "n_EquipID": "10103025", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "e_AbilityType1": "ATK", "n_AbilityValue1": "100000", "e_AbilityType2": "INT", "n_AbilityValue2": "24405", "e_AbilityType3": "M_CRI_DMG_Multiplier", "n_AbilityValue3": "2000", "n_DecompositionReward": "101", "n_DecompositionCount": "84" }, { "n_EquipID": "10103026", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "e_AbilityType1": "ATK", "n_AbilityValue1": "100000", "e_AbilityType2": "INT", "n_AbilityValue2": "24405", "e_AbilityType3": "M_CRI", "n_AbilityValue3": "400", "n_DecompositionReward": "101", "n_DecompositionCount": "84" }, { "n_EquipID": "10103027", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "e_AbilityType1": "ATK", "n_AbilityValue1": "100000", "e_AbilityType2": "INT", "n_AbilityValue2": "24405", "e_AbilityType3": "SKILL_Multiplier", "n_AbilityValue3": "550", "n_DecompositionReward": "101", "n_DecompositionCount": "84" }, { "n_EquipID": "10103028", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "e_AbilityType1": "ATK", "n_AbilityValue1": "100000", "e_AbilityType2": "INT", "n_AbilityValue2": "24405", "e_AbilityType3": "INT_Multiplier", "n_AbilityValue3": "700", "n_DecompositionReward": "101", "n_DecompositionCount": "84" }, { "n_EquipID": "10103029", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "e_AbilityType1": "ATK", "n_AbilityValue1": "300000", "e_AbilityType2": "INT", "n_AbilityValue2": "61012", "e_AbilityType3": "M_CRI_DMG_Multiplier", "n_AbilityValue3": "2250", "n_DecompositionReward": "101", "n_DecompositionCount": "111" }, { "n_EquipID": "10103030", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "e_AbilityType1": "ATK", "n_AbilityValue1": "300000", "e_AbilityType2": "INT", "n_AbilityValue2": "61012", "e_AbilityType3": "M_CRI", "n_AbilityValue3": "450", "n_DecompositionReward": "101", "n_DecompositionCount": "111" }, { "n_EquipID": "10103031", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "e_AbilityType1": "ATK", "n_AbilityValue1": "300000", "e_AbilityType2": "INT", "n_AbilityValue2": "61012", "e_AbilityType3": "SKILL_Multiplier", "n_AbilityValue3": "600", "n_DecompositionReward": "101", "n_DecompositionCount": "111" }, { "n_EquipID": "10103032", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "e_AbilityType1": "ATK", "n_AbilityValue1": "300000", "e_AbilityType2": "INT", "n_AbilityValue2": "61012", "e_AbilityType3": "INT_Multiplier", "n_AbilityValue3": "800", "n_DecompositionReward": "101", "n_DecompositionCount": "111" }, { "n_EquipID": "10103033", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "e_AbilityType1": "ATK", "n_AbilityValue1": "1000000", "e_AbilityType2": "INT", "n_AbilityValue2": "152530", "e_AbilityType3": "M_CRI_DMG_Multiplier", "n_AbilityValue3": "1000", "n_DecompositionReward": "101", "n_DecompositionCount": "142" }, { "n_EquipID": "10103034", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "e_AbilityType1": "ATK", "n_AbilityValue1": "1000000", "e_AbilityType2": "INT", "n_AbilityValue2": "152530", "e_AbilityType3": "M_CRI", "n_AbilityValue3": "2500", "n_DecompositionReward": "101", "n_DecompositionCount": "142" }, { "n_EquipID": "10103035", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "e_AbilityType1": "ATK", "n_AbilityValue1": "1000000", "e_AbilityType2": "INT", "n_AbilityValue2": "152530", "e_AbilityType3": "SKILL_Multiplier", "n_AbilityValue3": "2500", "n_DecompositionReward": "101", "n_DecompositionCount": "142" }, { "n_EquipID": "10201001", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "100", "e_AbilityType2": "DEF_Multiplier", "n_AbilityValue2": "100", "e_AbilityType3": "STR", "n_AbilityValue3": "50", "n_DecompositionReward": "102", "n_DecompositionCount": "1" }, { "n_EquipID": "10201002", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "150", "e_AbilityType2": "DEF_Multiplier", "n_AbilityValue2": "200", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "102", "n_DecompositionCount": "1" }, { "n_EquipID": "10201003", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "300", "e_AbilityType2": "DEF_Multiplier", "n_AbilityValue2": "300", "e_AbilityType3": "STR", "n_AbilityValue3": "125", "n_DecompositionReward": "102", "n_DecompositionCount": "6" }, { "n_EquipID": "10201004", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "450", "e_AbilityType2": "DEF_Multiplier", "n_AbilityValue2": "400", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "102", "n_DecompositionCount": "6" }, { "n_EquipID": "10201005", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "1000", "e_AbilityType2": "DEF_Multiplier", "n_AbilityValue2": "500", "e_AbilityType3": "STR", "n_AbilityValue3": "300", "n_DecompositionReward": "102", "n_DecompositionCount": "14" }, { "n_EquipID": "10201006", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "1500", "e_AbilityType2": "DEF_Multiplier", "n_AbilityValue2": "600", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "102", "n_DecompositionCount": "14" }, { "n_EquipID": "10201007", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "3000", "e_AbilityType2": "DEF_Multiplier", "n_AbilityValue2": "700", "e_AbilityType3": "STR", "n_AbilityValue3": "800", "n_DecompositionReward": "102", "n_DecompositionCount": "25" }, { "n_EquipID": "10201008", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "4500", "e_AbilityType2": "DEF_Multiplier", "n_AbilityValue2": "800", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "102", "n_DecompositionCount": "25" }, { "n_EquipID": "10201009", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "10000", "e_AbilityType2": "DEF_Multiplier", "n_AbilityValue2": "900", "e_AbilityType3": "STR", "n_AbilityValue3": "2000", "n_DecompositionReward": "102", "n_DecompositionCount": "41" }, { "n_EquipID": "10201010", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "15000", "e_AbilityType2": "DEF_Multiplier", "n_AbilityValue2": "1000", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "102", "n_DecompositionCount": "41" }, { "n_EquipID": "10201011", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "30000", "e_AbilityType2": "DEF_Multiplier", "n_AbilityValue2": "1200", "e_AbilityType3": "STR", "n_AbilityValue3": "4800", "n_DecompositionReward": "102", "n_DecompositionCount": "60" }, { "n_EquipID": "10201012", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "100000", "e_AbilityType2": "DEF_Multiplier", "n_AbilityValue2": "1500", "e_AbilityType3": "STR", "n_AbilityValue3": "12500", "n_DecompositionReward": "102", "n_DecompositionCount": "84" }, { "n_EquipID": "10201013", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "300000", "e_AbilityType2": "DEF_Multiplier", "n_AbilityValue2": "2000", "e_AbilityType3": "STR", "n_AbilityValue3": "32000", "n_DecompositionReward": "102", "n_DecompositionCount": "111" }, { "n_EquipID": "10201014", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "1000000", "e_AbilityType2": "DEF_Multiplier", "n_AbilityValue2": "2500", "e_AbilityType3": "STR", "n_AbilityValue3": "78000", "n_DecompositionReward": "102", "n_DecompositionCount": "142" }, { "n_EquipID": "10202001", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "50", "e_AbilityType2": "PIERCING_Block", "n_AbilityValue2": "100", "e_AbilityType3": "DEX", "n_AbilityValue3": "50", "n_DecompositionReward": "102", "n_DecompositionCount": "1" }, { "n_EquipID": "10202002", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "75", "e_AbilityType2": "PIERCING_Block", "n_AbilityValue2": "150", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "102", "n_DecompositionCount": "1" }, { "n_EquipID": "10202003", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "150", "e_AbilityType2": "PIERCING_Block", "n_AbilityValue2": "200", "e_AbilityType3": "DEX", "n_AbilityValue3": "125", "n_DecompositionReward": "102", "n_DecompositionCount": "6" }, { "n_EquipID": "10202004", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "225", "e_AbilityType2": "PIERCING_Block", "n_AbilityValue2": "250", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "102", "n_DecompositionCount": "6" }, { "n_EquipID": "10202005", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "500", "e_AbilityType2": "PIERCING_Block", "n_AbilityValue2": "300", "e_AbilityType3": "DEX", "n_AbilityValue3": "300", "n_DecompositionReward": "102", "n_DecompositionCount": "14" }, { "n_EquipID": "10202006", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "750", "e_AbilityType2": "PIERCING_Block", "n_AbilityValue2": "450", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "102", "n_DecompositionCount": "14" }, { "n_EquipID": "10202007", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "1500", "e_AbilityType2": "PIERCING_Block", "n_AbilityValue2": "500", "e_AbilityType3": "DEX", "n_AbilityValue3": "800", "n_DecompositionReward": "102", "n_DecompositionCount": "25" }, { "n_EquipID": "10202008", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "2250", "e_AbilityType2": "PIERCING_Block", "n_AbilityValue2": "600", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "102", "n_DecompositionCount": "25" }, { "n_EquipID": "10202009", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "5000", "e_AbilityType2": "PIERCING_Block", "n_AbilityValue2": "650", "e_AbilityType3": "DEX", "n_AbilityValue3": "2000", "n_DecompositionReward": "102", "n_DecompositionCount": "41" }, { "n_EquipID": "10202010", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "7500", "e_AbilityType2": "PIERCING_Block", "n_AbilityValue2": "700", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "102", "n_DecompositionCount": "41" }, { "n_EquipID": "10202011", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "15000", "e_AbilityType2": "PIERCING_Block", "n_AbilityValue2": "850", "e_AbilityType3": "DEX", "n_AbilityValue3": "4800", "n_DecompositionReward": "102", "n_DecompositionCount": "60" }, { "n_EquipID": "10202012", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "50000", "e_AbilityType2": "PIERCING_Block", "n_AbilityValue2": "1000", "e_AbilityType3": "DEX", "n_AbilityValue3": "12500", "n_DecompositionReward": "102", "n_DecompositionCount": "84" }, { "n_EquipID": "10202013", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "150000", "e_AbilityType2": "PIERCING_Block", "n_AbilityValue2": "1200", "e_AbilityType3": "DEX", "n_AbilityValue3": "32000", "n_DecompositionReward": "102", "n_DecompositionCount": "111" }, { "n_EquipID": "10202014", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "500000", "e_AbilityType2": "PIERCING_Block", "n_AbilityValue2": "1500", "e_AbilityType3": "DEX", "n_AbilityValue3": "78000", "n_DecompositionReward": "102", "n_DecompositionCount": "142" }, { "n_EquipID": "10203001", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "20", "e_AbilityType2": "COOLTIME_Multiplier", "n_AbilityValue2": "100", "e_AbilityType3": "INT", "n_AbilityValue3": "50", "n_DecompositionReward": "102", "n_DecompositionCount": "1" }, { "n_EquipID": "10203002", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "30", "e_AbilityType2": "COOLTIME_Multiplier", "n_AbilityValue2": "150", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "102", "n_DecompositionCount": "1" }, { "n_EquipID": "10203003", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "60", "e_AbilityType2": "COOLTIME_Multiplier", "n_AbilityValue2": "200", "e_AbilityType3": "INT", "n_AbilityValue3": "125", "n_DecompositionReward": "102", "n_DecompositionCount": "6" }, { "n_EquipID": "10203004", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "90", "e_AbilityType2": "COOLTIME_Multiplier", "n_AbilityValue2": "250", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "102", "n_DecompositionCount": "6" }, { "n_EquipID": "10203005", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "200", "e_AbilityType2": "COOLTIME_Multiplier", "n_AbilityValue2": "300", "e_AbilityType3": "INT", "n_AbilityValue3": "300", "n_DecompositionReward": "102", "n_DecompositionCount": "14" }, { "n_EquipID": "10203006", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "300", "e_AbilityType2": "COOLTIME_Multiplier", "n_AbilityValue2": "450", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "102", "n_DecompositionCount": "14" }, { "n_EquipID": "10203007", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "600", "e_AbilityType2": "COOLTIME_Multiplier", "n_AbilityValue2": "500", "e_AbilityType3": "INT", "n_AbilityValue3": "800", "n_DecompositionReward": "102", "n_DecompositionCount": "25" }, { "n_EquipID": "10203008", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "900", "e_AbilityType2": "COOLTIME_Multiplier", "n_AbilityValue2": "600", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "102", "n_DecompositionCount": "25" }, { "n_EquipID": "10203009", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "2000", "e_AbilityType2": "COOLTIME_Multiplier", "n_AbilityValue2": "650", "e_AbilityType3": "INT", "n_AbilityValue3": "2000", "n_DecompositionReward": "102", "n_DecompositionCount": "41" }, { "n_EquipID": "10203010", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "3000", "e_AbilityType2": "COOLTIME_Multiplier", "n_AbilityValue2": "700", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "102", "n_DecompositionCount": "41" }, { "n_EquipID": "10203011", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "6000", "e_AbilityType2": "COOLTIME_Multiplier", "n_AbilityValue2": "850", "e_AbilityType3": "INT", "n_AbilityValue3": "4800", "n_DecompositionReward": "102", "n_DecompositionCount": "60" }, { "n_EquipID": "10203012", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "20000", "e_AbilityType2": "COOLTIME_Multiplier", "n_AbilityValue2": "1000", "e_AbilityType3": "INT", "n_AbilityValue3": "12500", "n_DecompositionReward": "102", "n_DecompositionCount": "84" }, { "n_EquipID": "10203013", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "60000", "e_AbilityType2": "COOLTIME_Multiplier", "n_AbilityValue2": "1200", "e_AbilityType3": "INT", "n_AbilityValue3": "32000", "n_DecompositionReward": "102", "n_DecompositionCount": "111" }, { "n_EquipID": "10203014", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Armor", "e_EquipAttribute": "None", "e_AbilityType1": "DEF", "n_AbilityValue1": "200000", "e_AbilityType2": "COOLTIME_Multiplier", "n_AbilityValue2": "1500", "e_AbilityType3": "INT", "n_AbilityValue3": "78000", "n_DecompositionReward": "102", "n_DecompositionCount": "142" }, { "n_EquipID": "10301001", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "20", "e_AbilityType2": "HP", "n_AbilityValue2": "100", "e_AbilityType3": "STR", "n_AbilityValue3": "50", "n_DecompositionReward": "103", "n_DecompositionCount": "1" }, { "n_EquipID": "10301002", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "30", "e_AbilityType2": "HP", "n_AbilityValue2": "150", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "103", "n_DecompositionCount": "1" }, { "n_EquipID": "10301003", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "60", "e_AbilityType2": "HP", "n_AbilityValue2": "300", "e_AbilityType3": "STR", "n_AbilityValue3": "150", "n_DecompositionReward": "103", "n_DecompositionCount": "6" }, { "n_EquipID": "10301004", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "90", "e_AbilityType2": "HP", "n_AbilityValue2": "450", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "103", "n_DecompositionCount": "6" }, { "n_EquipID": "10301005", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "200", "e_AbilityType2": "HP", "n_AbilityValue2": "1000", "e_AbilityType3": "STR", "n_AbilityValue3": "500", "n_DecompositionReward": "103", "n_DecompositionCount": "14" }, { "n_EquipID": "10301006", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "300", "e_AbilityType2": "HP", "n_AbilityValue2": "1500", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "103", "n_DecompositionCount": "14" }, { "n_EquipID": "10301007", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "600", "e_AbilityType2": "HP", "n_AbilityValue2": "3000", "e_AbilityType3": "STR", "n_AbilityValue3": "1500", "n_DecompositionReward": "103", "n_DecompositionCount": "25" }, { "n_EquipID": "10301008", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "900", "e_AbilityType2": "HP", "n_AbilityValue2": "4500", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "103", "n_DecompositionCount": "25" }, { "n_EquipID": "10301009", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "2000", "e_AbilityType2": "HP", "n_AbilityValue2": "10000", "e_AbilityType3": "STR", "n_AbilityValue3": "5000", "n_DecompositionReward": "103", "n_DecompositionCount": "41" }, { "n_EquipID": "10301010", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "3000", "e_AbilityType2": "HP", "n_AbilityValue2": "15000", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "103", "n_DecompositionCount": "41" }, { "n_EquipID": "10301011", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "6000", "e_AbilityType2": "HP", "n_AbilityValue2": "30000", "e_AbilityType3": "STR", "n_AbilityValue3": "15000", "n_DecompositionReward": "103", "n_DecompositionCount": "60" }, { "n_EquipID": "10301012", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "20000", "e_AbilityType2": "HP", "n_AbilityValue2": "100000", "e_AbilityType3": "STR", "n_AbilityValue3": "50000", "n_DecompositionReward": "103", "n_DecompositionCount": "84" }, { "n_EquipID": "10301013", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "60000", "e_AbilityType2": "HP", "n_AbilityValue2": "300000", "e_AbilityType3": "STR", "n_AbilityValue3": "150000", "n_DecompositionReward": "103", "n_DecompositionCount": "111" }, { "n_EquipID": "10301014", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "200000", "e_AbilityType2": "HP", "n_AbilityValue2": "1000000", "e_AbilityType3": "STR", "n_AbilityValue3": "500000", "n_DecompositionReward": "103", "n_DecompositionCount": "142" }, { "n_EquipID": "10302001", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "50", "e_AbilityType2": "HP", "n_AbilityValue2": "40", "e_AbilityType3": "DEX", "n_AbilityValue3": "20", "n_DecompositionReward": "103", "n_DecompositionCount": "1" }, { "n_EquipID": "10302002", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "75", "e_AbilityType2": "HP", "n_AbilityValue2": "60", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "103", "n_DecompositionCount": "1" }, { "n_EquipID": "10302003", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "150", "e_AbilityType2": "HP", "n_AbilityValue2": "120", "e_AbilityType3": "DEX", "n_AbilityValue3": "60", "n_DecompositionReward": "103", "n_DecompositionCount": "6" }, { "n_EquipID": "10302004", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "225", "e_AbilityType2": "HP", "n_AbilityValue2": "180", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "103", "n_DecompositionCount": "6" }, { "n_EquipID": "10302005", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "500", "e_AbilityType2": "HP", "n_AbilityValue2": "400", "e_AbilityType3": "DEX", "n_AbilityValue3": "200", "n_DecompositionReward": "103", "n_DecompositionCount": "14" }, { "n_EquipID": "10302006", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "750", "e_AbilityType2": "HP", "n_AbilityValue2": "600", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "103", "n_DecompositionCount": "14" }, { "n_EquipID": "10302007", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "1500", "e_AbilityType2": "HP", "n_AbilityValue2": "1200", "e_AbilityType3": "DEX", "n_AbilityValue3": "600", "n_DecompositionReward": "103", "n_DecompositionCount": "25" }, { "n_EquipID": "10302008", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "2250", "e_AbilityType2": "HP", "n_AbilityValue2": "1800", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "103", "n_DecompositionCount": "25" }, { "n_EquipID": "10302009", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "5000", "e_AbilityType2": "HP", "n_AbilityValue2": "4000", "e_AbilityType3": "DEX", "n_AbilityValue3": "2000", "n_DecompositionReward": "103", "n_DecompositionCount": "41" }, { "n_EquipID": "10302010", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "7500", "e_AbilityType2": "HP", "n_AbilityValue2": "6000", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "103", "n_DecompositionCount": "41" }, { "n_EquipID": "10302011", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "15000", "e_AbilityType2": "HP", "n_AbilityValue2": "12000", "e_AbilityType3": "DEX", "n_AbilityValue3": "6000", "n_DecompositionReward": "103", "n_DecompositionCount": "60" }, { "n_EquipID": "10302012", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "50000", "e_AbilityType2": "HP", "n_AbilityValue2": "40000", "e_AbilityType3": "DEX", "n_AbilityValue3": "20000", "n_DecompositionReward": "103", "n_DecompositionCount": "84" }, { "n_EquipID": "10302013", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "150000", "e_AbilityType2": "HP", "n_AbilityValue2": "120000", "e_AbilityType3": "DEX", "n_AbilityValue3": "60000", "n_DecompositionReward": "103", "n_DecompositionCount": "111" }, { "n_EquipID": "10302014", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "500000", "e_AbilityType2": "HP", "n_AbilityValue2": "400000", "e_AbilityType3": "DEX", "n_AbilityValue3": "200000", "n_DecompositionReward": "103", "n_DecompositionCount": "142" }, { "n_EquipID": "10303001", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "100", "e_AbilityType2": "HP", "n_AbilityValue2": "200", "e_AbilityType3": "INT", "n_AbilityValue3": "100", "n_DecompositionReward": "103", "n_DecompositionCount": "1" }, { "n_EquipID": "10303002", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "150", "e_AbilityType2": "HP", "n_AbilityValue2": "300", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "103", "n_DecompositionCount": "1" }, { "n_EquipID": "10303003", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "300", "e_AbilityType2": "HP", "n_AbilityValue2": "600", "e_AbilityType3": "INT", "n_AbilityValue3": "300", "n_DecompositionReward": "103", "n_DecompositionCount": "6" }, { "n_EquipID": "10303004", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "450", "e_AbilityType2": "HP", "n_AbilityValue2": "900", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "103", "n_DecompositionCount": "6" }, { "n_EquipID": "10303005", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "1000", "e_AbilityType2": "HP", "n_AbilityValue2": "2000", "e_AbilityType3": "INT", "n_AbilityValue3": "1000", "n_DecompositionReward": "103", "n_DecompositionCount": "14" }, { "n_EquipID": "10303006", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "1500", "e_AbilityType2": "HP", "n_AbilityValue2": "3000", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "103", "n_DecompositionCount": "14" }, { "n_EquipID": "10303007", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "3000", "e_AbilityType2": "HP", "n_AbilityValue2": "6000", "e_AbilityType3": "INT", "n_AbilityValue3": "3000", "n_DecompositionReward": "103", "n_DecompositionCount": "25" }, { "n_EquipID": "10303008", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "4500", "e_AbilityType2": "HP", "n_AbilityValue2": "9000", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "103", "n_DecompositionCount": "25" }, { "n_EquipID": "10303009", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "10000", "e_AbilityType2": "HP", "n_AbilityValue2": "20000", "e_AbilityType3": "INT", "n_AbilityValue3": "10000", "n_DecompositionReward": "103", "n_DecompositionCount": "41" }, { "n_EquipID": "10303010", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "15000", "e_AbilityType2": "HP", "n_AbilityValue2": "30000", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "103", "n_DecompositionCount": "41" }, { "n_EquipID": "10303011", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "30000", "e_AbilityType2": "HP", "n_AbilityValue2": "60000", "e_AbilityType3": "INT", "n_AbilityValue3": "30000", "n_DecompositionReward": "103", "n_DecompositionCount": "60" }, { "n_EquipID": "10303012", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "100000", "e_AbilityType2": "HP", "n_AbilityValue2": "200000", "e_AbilityType3": "INT", "n_AbilityValue3": "100000", "n_DecompositionReward": "103", "n_DecompositionCount": "84" }, { "n_EquipID": "10303013", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "300000", "e_AbilityType2": "HP", "n_AbilityValue2": "600000", "e_AbilityType3": "INT", "n_AbilityValue3": "300000", "n_DecompositionReward": "103", "n_DecompositionCount": "111" }, { "n_EquipID": "10303014", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "e_AbilityType1": "M_DEF", "n_AbilityValue1": "1000000", "e_AbilityType2": "HP", "n_AbilityValue2": "2000000", "e_AbilityType3": "INT", "n_AbilityValue3": "1000000", "n_DecompositionReward": "103", "n_DecompositionCount": "142" }, { "n_EquipID": "10401001", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "DMG_DECREASE", "n_AbilityValue1": "300", "e_AbilityType2": "STR", "n_AbilityValue2": "120", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "1" }, { "n_EquipID": "10401002", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "DMG_DECREASE", "n_AbilityValue1": "350", "e_AbilityType2": "STR", "n_AbilityValue2": "140", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "1" }, { "n_EquipID": "10401003", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "DMG_DECREASE", "n_AbilityValue1": "400", "e_AbilityType2": "STR", "n_AbilityValue2": "160", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "6" }, { "n_EquipID": "10401004", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "DMG_DECREASE", "n_AbilityValue1": "450", "e_AbilityType2": "STR", "n_AbilityValue2": "180", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "6" }, { "n_EquipID": "10401005", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "DMG_DECREASE", "n_AbilityValue1": "500", "e_AbilityType2": "STR", "n_AbilityValue2": "200", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "14" }, { "n_EquipID": "10401006", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "DMG_DECREASE", "n_AbilityValue1": "600", "e_AbilityType2": "STR", "n_AbilityValue2": "240", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "14" }, { "n_EquipID": "10401007", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "DMG_DECREASE", "n_AbilityValue1": "700", "e_AbilityType2": "STR", "n_AbilityValue2": "280", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "25" }, { "n_EquipID": "10401008", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "DMG_DECREASE", "n_AbilityValue1": "850", "e_AbilityType2": "STR", "n_AbilityValue2": "340", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "25" }, { "n_EquipID": "10401009", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "DMG_DECREASE", "n_AbilityValue1": "1000", "e_AbilityType2": "STR", "n_AbilityValue2": "400", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "41" }, { "n_EquipID": "10401010", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "DMG_DECREASE", "n_AbilityValue1": "1200", "e_AbilityType2": "STR", "n_AbilityValue2": "480", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "41" }, { "n_EquipID": "10401011", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "DMG_DECREASE", "n_AbilityValue1": "1400", "e_AbilityType2": "STR", "n_AbilityValue2": "560", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "60" }, { "n_EquipID": "10401012", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "DMG_DECREASE", "n_AbilityValue1": "1600", "e_AbilityType2": "STR", "n_AbilityValue2": "640", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "84" }, { "n_EquipID": "10401013", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "DMG_DECREASE", "n_AbilityValue1": "1800", "e_AbilityType2": "STR", "n_AbilityValue2": "720", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "111" }, { "n_EquipID": "10401014", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "DMG_DECREASE", "n_AbilityValue1": "2000", "e_AbilityType2": "STR", "n_AbilityValue2": "800", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "142" }, { "n_EquipID": "10402001", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "PIERCING_Multiplier", "n_AbilityValue1": "300", "e_AbilityType2": "DEX", "n_AbilityValue2": "120", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "1" }, { "n_EquipID": "10402002", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "PIERCING_Multiplier", "n_AbilityValue1": "350", "e_AbilityType2": "DEX", "n_AbilityValue2": "140", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "1" }, { "n_EquipID": "10402003", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "PIERCING_Multiplier", "n_AbilityValue1": "400", "e_AbilityType2": "DEX", "n_AbilityValue2": "160", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "6" }, { "n_EquipID": "10402004", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "PIERCING_Multiplier", "n_AbilityValue1": "450", "e_AbilityType2": "DEX", "n_AbilityValue2": "180", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "6" }, { "n_EquipID": "10402005", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "PIERCING_Multiplier", "n_AbilityValue1": "500", "e_AbilityType2": "DEX", "n_AbilityValue2": "200", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "14" }, { "n_EquipID": "10402006", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "PIERCING_Multiplier", "n_AbilityValue1": "600", "e_AbilityType2": "DEX", "n_AbilityValue2": "240", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "14" }, { "n_EquipID": "10402007", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "PIERCING_Multiplier", "n_AbilityValue1": "700", "e_AbilityType2": "DEX", "n_AbilityValue2": "280", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "25" }, { "n_EquipID": "10402008", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "PIERCING_Multiplier", "n_AbilityValue1": "850", "e_AbilityType2": "DEX", "n_AbilityValue2": "340", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "25" }, { "n_EquipID": "10402009", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "PIERCING_Multiplier", "n_AbilityValue1": "1000", "e_AbilityType2": "DEX", "n_AbilityValue2": "400", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "41" }, { "n_EquipID": "10402010", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "PIERCING_Multiplier", "n_AbilityValue1": "1200", "e_AbilityType2": "DEX", "n_AbilityValue2": "480", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "41" }, { "n_EquipID": "10402011", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "PIERCING_Multiplier", "n_AbilityValue1": "1400", "e_AbilityType2": "DEX", "n_AbilityValue2": "560", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "60" }, { "n_EquipID": "10402012", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "PIERCING_Multiplier", "n_AbilityValue1": "1600", "e_AbilityType2": "DEX", "n_AbilityValue2": "640", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "84" }, { "n_EquipID": "10402013", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "PIERCING_Multiplier", "n_AbilityValue1": "1800", "e_AbilityType2": "DEX", "n_AbilityValue2": "720", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "111" }, { "n_EquipID": "10402014", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "PIERCING_Multiplier", "n_AbilityValue1": "2000", "e_AbilityType2": "DEX", "n_AbilityValue2": "800", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "142" }, { "n_EquipID": "10403001", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "SKILL_COST", "n_AbilityValue1": "300", "e_AbilityType2": "INT", "n_AbilityValue2": "120", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "1" }, { "n_EquipID": "10403002", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "SKILL_COST", "n_AbilityValue1": "350", "e_AbilityType2": "INT", "n_AbilityValue2": "140", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "1" }, { "n_EquipID": "10403003", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "SKILL_COST", "n_AbilityValue1": "400", "e_AbilityType2": "INT", "n_AbilityValue2": "160", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "6" }, { "n_EquipID": "10403004", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "SKILL_COST", "n_AbilityValue1": "450", "e_AbilityType2": "INT", "n_AbilityValue2": "180", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "6" }, { "n_EquipID": "10403005", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "SKILL_COST", "n_AbilityValue1": "500", "e_AbilityType2": "INT", "n_AbilityValue2": "200", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "14" }, { "n_EquipID": "10403006", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "SKILL_COST", "n_AbilityValue1": "600", "e_AbilityType2": "INT", "n_AbilityValue2": "240", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "14" }, { "n_EquipID": "10403007", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "SKILL_COST", "n_AbilityValue1": "700", "e_AbilityType2": "INT", "n_AbilityValue2": "280", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "25" }, { "n_EquipID": "10403008", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "SKILL_COST", "n_AbilityValue1": "850", "e_AbilityType2": "INT", "n_AbilityValue2": "340", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "25" }, { "n_EquipID": "10403009", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "SKILL_COST", "n_AbilityValue1": "1000", "e_AbilityType2": "INT", "n_AbilityValue2": "400", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "41" }, { "n_EquipID": "10403010", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "SKILL_COST", "n_AbilityValue1": "1200", "e_AbilityType2": "INT", "n_AbilityValue2": "480", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "41" }, { "n_EquipID": "10403011", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "SKILL_COST", "n_AbilityValue1": "1400", "e_AbilityType2": "INT", "n_AbilityValue2": "560", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "60" }, { "n_EquipID": "10403012", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "SKILL_COST", "n_AbilityValue1": "1600", "e_AbilityType2": "INT", "n_AbilityValue2": "640", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "84" }, { "n_EquipID": "10403013", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "SKILL_COST", "n_AbilityValue1": "1800", "e_AbilityType2": "INT", "n_AbilityValue2": "720", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "111" }, { "n_EquipID": "10403014", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Extra", "e_EquipAttribute": "None", "e_AbilityType1": "SKILL_COST", "n_AbilityValue1": "2000", "e_AbilityType2": "INT", "n_AbilityValue2": "800", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "104", "n_DecompositionCount": "142" }, { "n_EquipID": "10500001", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Necklace", "e_EquipAttribute": "None", "e_AbilityType1": "HP_REGEN", "n_AbilityValue1": "2", "e_AbilityType2": "HP_Multiplier", "n_AbilityValue2": "100", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "105", "n_DecompositionCount": "1" }, { "n_EquipID": "10500002", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Necklace", "e_EquipAttribute": "None", "e_AbilityType1": "HP_REGEN", "n_AbilityValue1": "5", "e_AbilityType2": "HP", "n_AbilityValue2": "100", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "105", "n_DecompositionCount": "1" }, { "n_EquipID": "10500003", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Necklace", "e_EquipAttribute": "None", "e_AbilityType1": "HP_REGEN", "n_AbilityValue1": "13", "e_AbilityType2": "HP_Multiplier", "n_AbilityValue2": "200", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "105", "n_DecompositionCount": "6" }, { "n_EquipID": "10500004", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Necklace", "e_EquipAttribute": "None", "e_AbilityType1": "HP_REGEN", "n_AbilityValue1": "33", "e_AbilityType2": "HP", "n_AbilityValue2": "200", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "105", "n_DecompositionCount": "6" }, { "n_EquipID": "10500005", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Necklace", "e_EquipAttribute": "None", "e_AbilityType1": "HP_REGEN", "n_AbilityValue1": "84", "e_AbilityType2": "HP_Multiplier", "n_AbilityValue2": "350", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "105", "n_DecompositionCount": "14" }, { "n_EquipID": "10500006", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Necklace", "e_EquipAttribute": "None", "e_AbilityType1": "HP_REGEN", "n_AbilityValue1": "210", "e_AbilityType2": "HP", "n_AbilityValue2": "350", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "105", "n_DecompositionCount": "14" }, { "n_EquipID": "10500007", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Necklace", "e_EquipAttribute": "None", "e_AbilityType1": "HP_REGEN", "n_AbilityValue1": "530", "e_AbilityType2": "HP_Multiplier", "n_AbilityValue2": "500", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "105", "n_DecompositionCount": "25" }, { "n_EquipID": "10500008", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Necklace", "e_EquipAttribute": "None", "e_AbilityType1": "HP_REGEN", "n_AbilityValue1": "1330", "e_AbilityType2": "HP", "n_AbilityValue2": "500", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "105", "n_DecompositionCount": "25" }, { "n_EquipID": "10500009", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Necklace", "e_EquipAttribute": "None", "e_AbilityType1": "HP_REGEN", "n_AbilityValue1": "3330", "e_AbilityType2": "HP_Multiplier", "n_AbilityValue2": "650", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "105", "n_DecompositionCount": "41" }, { "n_EquipID": "10500010", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Necklace", "e_EquipAttribute": "None", "e_AbilityType1": "HP_REGEN", "n_AbilityValue1": "8330", "e_AbilityType2": "HP", "n_AbilityValue2": "650", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "105", "n_DecompositionCount": "41" }, { "n_EquipID": "10500011", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Necklace", "e_EquipAttribute": "None", "e_AbilityType1": "HP_REGEN", "n_AbilityValue1": "20900", "e_AbilityType2": "HP_Multiplier", "n_AbilityValue2": "800", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "105", "n_DecompositionCount": "60" }, { "n_EquipID": "10500012", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Necklace", "e_EquipAttribute": "None", "e_AbilityType1": "HP_REGEN", "n_AbilityValue1": "52300", "e_AbilityType2": "HP_Multiplier", "n_AbilityValue2": "1000", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "105", "n_DecompositionCount": "84" }, { "n_EquipID": "10500013", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Necklace", "e_EquipAttribute": "None", "e_AbilityType1": "HP_REGEN", "n_AbilityValue1": "131000", "e_AbilityType2": "HP_Multiplier", "n_AbilityValue2": "1250", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "105", "n_DecompositionCount": "111" }, { "n_EquipID": "10500014", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Necklace", "e_EquipAttribute": "None", "e_AbilityType1": "HP_REGEN", "n_AbilityValue1": "328000", "e_AbilityType2": "HP_Multiplier", "n_AbilityValue2": "1500", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "105", "n_DecompositionCount": "142" }, { "n_EquipID": "10600001", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Ring", "e_EquipAttribute": "None", "e_AbilityType1": "MP_REGEN", "n_AbilityValue1": "2", "e_AbilityType2": "MP_Multiplier", "n_AbilityValue2": "100", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "106", "n_DecompositionCount": "1" }, { "n_EquipID": "10600002", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Ring", "e_EquipAttribute": "None", "e_AbilityType1": "MP_REGEN", "n_AbilityValue1": "5", "e_AbilityType2": "MP", "n_AbilityValue2": "100", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "106", "n_DecompositionCount": "1" }, { "n_EquipID": "10600003", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Ring", "e_EquipAttribute": "None", "e_AbilityType1": "MP_REGEN", "n_AbilityValue1": "13", "e_AbilityType2": "MP_Multiplier", "n_AbilityValue2": "200", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "106", "n_DecompositionCount": "6" }, { "n_EquipID": "10600004", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Ring", "e_EquipAttribute": "None", "e_AbilityType1": "MP_REGEN", "n_AbilityValue1": "33", "e_AbilityType2": "MP", "n_AbilityValue2": "200", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "106", "n_DecompositionCount": "6" }, { "n_EquipID": "10600005", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Ring", "e_EquipAttribute": "None", "e_AbilityType1": "MP_REGEN", "n_AbilityValue1": "84", "e_AbilityType2": "MP_Multiplier", "n_AbilityValue2": "350", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "106", "n_DecompositionCount": "14" }, { "n_EquipID": "10600006", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Ring", "e_EquipAttribute": "None", "e_AbilityType1": "MP_REGEN", "n_AbilityValue1": "210", "e_AbilityType2": "MP", "n_AbilityValue2": "350", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "106", "n_DecompositionCount": "14" }, { "n_EquipID": "10600007", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Ring", "e_EquipAttribute": "None", "e_AbilityType1": "MP_REGEN", "n_AbilityValue1": "530", "e_AbilityType2": "MP_Multiplier", "n_AbilityValue2": "500", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "106", "n_DecompositionCount": "25" }, { "n_EquipID": "10600008", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Ring", "e_EquipAttribute": "None", "e_AbilityType1": "MP_REGEN", "n_AbilityValue1": "1330", "e_AbilityType2": "MP", "n_AbilityValue2": "500", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "106", "n_DecompositionCount": "25" }, { "n_EquipID": "10600009", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Ring", "e_EquipAttribute": "None", "e_AbilityType1": "MP_REGEN", "n_AbilityValue1": "3330", "e_AbilityType2": "MP_Multiplier", "n_AbilityValue2": "650", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "106", "n_DecompositionCount": "41" }, { "n_EquipID": "10600010", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Ring", "e_EquipAttribute": "None", "e_AbilityType1": "MP_REGEN", "n_AbilityValue1": "8330", "e_AbilityType2": "MP", "n_AbilityValue2": "650", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "106", "n_DecompositionCount": "41" }, { "n_EquipID": "10600011", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Ring", "e_EquipAttribute": "None", "e_AbilityType1": "MP_REGEN", "n_AbilityValue1": "20900", "e_AbilityType2": "MP_Multiplier", "n_AbilityValue2": "800", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "106", "n_DecompositionCount": "60" }, { "n_EquipID": "10600012", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Ring", "e_EquipAttribute": "None", "e_AbilityType1": "MP_REGEN", "n_AbilityValue1": "52300", "e_AbilityType2": "MP_Multiplier", "n_AbilityValue2": "1000", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "106", "n_DecompositionCount": "84" }, { "n_EquipID": "10600013", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Ring", "e_EquipAttribute": "None", "e_AbilityType1": "MP_REGEN", "n_AbilityValue1": "131000", "e_AbilityType2": "MP_Multiplier", "n_AbilityValue2": "1250", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "106", "n_DecompositionCount": "111" }, { "n_EquipID": "10600014", "s_ItemPrefab_LH": "", "s_ItemPrefab_RH": "", "e_EquipParts": "Ring", "e_EquipAttribute": "None", "e_AbilityType1": "MP_REGEN", "n_AbilityValue1": "328000", "e_AbilityType2": "MP_Multiplier", "n_AbilityValue2": "1500", "e_AbilityType3": "None", "n_AbilityValue3": "0", "n_DecompositionReward": "106", "n_DecompositionCount": "142" } ] } function Get_EquipSmeltingTable() { return [ { "n_SmeltingStep": "0", "n_NextStepRate": "1000000", "n_UpgradePrice": "1", "n_IncreaseValueRate": "0" }, { "n_SmeltingStep": "1", "n_NextStepRate": "1000000", "n_UpgradePrice": "1", "n_IncreaseValueRate": "1000" }, { "n_SmeltingStep": "2", "n_NextStepRate": "990000", "n_UpgradePrice": "1", "n_IncreaseValueRate": "2500" }, { "n_SmeltingStep": "3", "n_NextStepRate": "980000", "n_UpgradePrice": "1", "n_IncreaseValueRate": "4000" }, { "n_SmeltingStep": "4", "n_NextStepRate": "970000", "n_UpgradePrice": "1", "n_IncreaseValueRate": "5500" }, { "n_SmeltingStep": "5", "n_NextStepRate": "960000", "n_UpgradePrice": "1", "n_IncreaseValueRate": "7000" }, { "n_SmeltingStep": "6", "n_NextStepRate": "950000", "n_UpgradePrice": "1", "n_IncreaseValueRate": "8500" }, { "n_SmeltingStep": "7", "n_NextStepRate": "940000", "n_UpgradePrice": "1", "n_IncreaseValueRate": "10000" }, { "n_SmeltingStep": "8", "n_NextStepRate": "930000", "n_UpgradePrice": "1", "n_IncreaseValueRate": "11500" }, { "n_SmeltingStep": "9", "n_NextStepRate": "920000", "n_UpgradePrice": "1", "n_IncreaseValueRate": "13000" }, { "n_SmeltingStep": "10", "n_NextStepRate": "910000", "n_UpgradePrice": "1", "n_IncreaseValueRate": "14500" }, { "n_SmeltingStep": "11", "n_NextStepRate": "900000", "n_UpgradePrice": "2", "n_IncreaseValueRate": "16000" }, { "n_SmeltingStep": "12", "n_NextStepRate": "890000", "n_UpgradePrice": "2", "n_IncreaseValueRate": "17500" }, { "n_SmeltingStep": "13", "n_NextStepRate": "880000", "n_UpgradePrice": "2", "n_IncreaseValueRate": "19000" }, { "n_SmeltingStep": "14", "n_NextStepRate": "870000", "n_UpgradePrice": "2", "n_IncreaseValueRate": "20500" }, { "n_SmeltingStep": "15", "n_NextStepRate": "860000", "n_UpgradePrice": "2", "n_IncreaseValueRate": "22000" }, { "n_SmeltingStep": "16", "n_NextStepRate": "850000", "n_UpgradePrice": "2", "n_IncreaseValueRate": "23500" }, { "n_SmeltingStep": "17", "n_NextStepRate": "840000", "n_UpgradePrice": "2", "n_IncreaseValueRate": "25000" }, { "n_SmeltingStep": "18", "n_NextStepRate": "830000", "n_UpgradePrice": "2", "n_IncreaseValueRate": "26500" }, { "n_SmeltingStep": "19", "n_NextStepRate": "820000", "n_UpgradePrice": "2", "n_IncreaseValueRate": "28000" }, { "n_SmeltingStep": "20", "n_NextStepRate": "810000", "n_UpgradePrice": "2", "n_IncreaseValueRate": "29500" }, { "n_SmeltingStep": "21", "n_NextStepRate": "800000", "n_UpgradePrice": "3", "n_IncreaseValueRate": "31000" }, { "n_SmeltingStep": "22", "n_NextStepRate": "790000", "n_UpgradePrice": "3", "n_IncreaseValueRate": "32500" }, { "n_SmeltingStep": "23", "n_NextStepRate": "780000", "n_UpgradePrice": "3", "n_IncreaseValueRate": "34000" }, { "n_SmeltingStep": "24", "n_NextStepRate": "770000", "n_UpgradePrice": "3", "n_IncreaseValueRate": "35500" }, { "n_SmeltingStep": "25", "n_NextStepRate": "760000", "n_UpgradePrice": "3", "n_IncreaseValueRate": "37000" }, { "n_SmeltingStep": "26", "n_NextStepRate": "750000", "n_UpgradePrice": "3", "n_IncreaseValueRate": "38500" }, { "n_SmeltingStep": "27", "n_NextStepRate": "740000", "n_UpgradePrice": "3", "n_IncreaseValueRate": "40000" }, { "n_SmeltingStep": "28", "n_NextStepRate": "730000", "n_UpgradePrice": "3", "n_IncreaseValueRate": "41500" }, { "n_SmeltingStep": "29", "n_NextStepRate": "720000", "n_UpgradePrice": "3", "n_IncreaseValueRate": "43000" }, { "n_SmeltingStep": "30", "n_NextStepRate": "710000", "n_UpgradePrice": "3", "n_IncreaseValueRate": "44500" }, { "n_SmeltingStep": "31", "n_NextStepRate": "700000", "n_UpgradePrice": "3", "n_IncreaseValueRate": "46000" }, { "n_SmeltingStep": "32", "n_NextStepRate": "690000", "n_UpgradePrice": "3", "n_IncreaseValueRate": "47500" }, { "n_SmeltingStep": "33", "n_NextStepRate": "680000", "n_UpgradePrice": "3", "n_IncreaseValueRate": "49000" }, { "n_SmeltingStep": "34", "n_NextStepRate": "670000", "n_UpgradePrice": "3", "n_IncreaseValueRate": "50500" }, { "n_SmeltingStep": "35", "n_NextStepRate": "660000", "n_UpgradePrice": "3", "n_IncreaseValueRate": "52000" }, { "n_SmeltingStep": "36", "n_NextStepRate": "650000", "n_UpgradePrice": "3", "n_IncreaseValueRate": "53500" }, { "n_SmeltingStep": "37", "n_NextStepRate": "640000", "n_UpgradePrice": "3", "n_IncreaseValueRate": "55000" }, { "n_SmeltingStep": "38", "n_NextStepRate": "630000", "n_UpgradePrice": "3", "n_IncreaseValueRate": "56500" }, { "n_SmeltingStep": "39", "n_NextStepRate": "620000", "n_UpgradePrice": "3", "n_IncreaseValueRate": "58000" }, { "n_SmeltingStep": "40", "n_NextStepRate": "610000", "n_UpgradePrice": "3", "n_IncreaseValueRate": "59500" }, { "n_SmeltingStep": "41", "n_NextStepRate": "600000", "n_UpgradePrice": "4", "n_IncreaseValueRate": "61000" }, { "n_SmeltingStep": "42", "n_NextStepRate": "590000", "n_UpgradePrice": "4", "n_IncreaseValueRate": "62500" }, { "n_SmeltingStep": "43", "n_NextStepRate": "580000", "n_UpgradePrice": "4", "n_IncreaseValueRate": "64000" }, { "n_SmeltingStep": "44", "n_NextStepRate": "570000", "n_UpgradePrice": "4", "n_IncreaseValueRate": "65500" }, { "n_SmeltingStep": "45", "n_NextStepRate": "560000", "n_UpgradePrice": "4", "n_IncreaseValueRate": "67000" }, { "n_SmeltingStep": "46", "n_NextStepRate": "550000", "n_UpgradePrice": "4", "n_IncreaseValueRate": "68500" }, { "n_SmeltingStep": "47", "n_NextStepRate": "540000", "n_UpgradePrice": "4", "n_IncreaseValueRate": "70000" }, { "n_SmeltingStep": "48", "n_NextStepRate": "530000", "n_UpgradePrice": "4", "n_IncreaseValueRate": "71500" }, { "n_SmeltingStep": "49", "n_NextStepRate": "520000", "n_UpgradePrice": "4", "n_IncreaseValueRate": "73000" }, { "n_SmeltingStep": "50", "n_NextStepRate": "510000", "n_UpgradePrice": "4", "n_IncreaseValueRate": "74500" }, { "n_SmeltingStep": "51", "n_NextStepRate": "500000", "n_UpgradePrice": "5", "n_IncreaseValueRate": "76000" }, { "n_SmeltingStep": "52", "n_NextStepRate": "490000", "n_UpgradePrice": "5", "n_IncreaseValueRate": "77500" }, { "n_SmeltingStep": "53", "n_NextStepRate": "480000", "n_UpgradePrice": "5", "n_IncreaseValueRate": "79000" }, { "n_SmeltingStep": "54", "n_NextStepRate": "470000", "n_UpgradePrice": "5", "n_IncreaseValueRate": "80500" }, { "n_SmeltingStep": "55", "n_NextStepRate": "460000", "n_UpgradePrice": "5", "n_IncreaseValueRate": "82000" }, { "n_SmeltingStep": "56", "n_NextStepRate": "450000", "n_UpgradePrice": "5", "n_IncreaseValueRate": "83500" }, { "n_SmeltingStep": "57", "n_NextStepRate": "440000", "n_UpgradePrice": "5", "n_IncreaseValueRate": "85000" }, { "n_SmeltingStep": "58", "n_NextStepRate": "430000", "n_UpgradePrice": "5", "n_IncreaseValueRate": "86500" }, { "n_SmeltingStep": "59", "n_NextStepRate": "420000", "n_UpgradePrice": "5", "n_IncreaseValueRate": "88000" }, { "n_SmeltingStep": "60", "n_NextStepRate": "410000", "n_UpgradePrice": "5", "n_IncreaseValueRate": "89500" }, { "n_SmeltingStep": "61", "n_NextStepRate": "400000", "n_UpgradePrice": "6", "n_IncreaseValueRate": "91000" }, { "n_SmeltingStep": "62", "n_NextStepRate": "390000", "n_UpgradePrice": "6", "n_IncreaseValueRate": "92500" }, { "n_SmeltingStep": "63", "n_NextStepRate": "380000", "n_UpgradePrice": "6", "n_IncreaseValueRate": "94000" }, { "n_SmeltingStep": "64", "n_NextStepRate": "370000", "n_UpgradePrice": "6", "n_IncreaseValueRate": "95500" }, { "n_SmeltingStep": "65", "n_NextStepRate": "360000", "n_UpgradePrice": "6", "n_IncreaseValueRate": "97000" }, { "n_SmeltingStep": "66", "n_NextStepRate": "350000", "n_UpgradePrice": "6", "n_IncreaseValueRate": "98500" }, { "n_SmeltingStep": "67", "n_NextStepRate": "340000", "n_UpgradePrice": "6", "n_IncreaseValueRate": "100000" }, { "n_SmeltingStep": "68", "n_NextStepRate": "330000", "n_UpgradePrice": "6", "n_IncreaseValueRate": "101500" }, { "n_SmeltingStep": "69", "n_NextStepRate": "320000", "n_UpgradePrice": "6", "n_IncreaseValueRate": "103000" }, { "n_SmeltingStep": "70", "n_NextStepRate": "310000", "n_UpgradePrice": "6", "n_IncreaseValueRate": "104500" }, { "n_SmeltingStep": "71", "n_NextStepRate": "300000", "n_UpgradePrice": "7", "n_IncreaseValueRate": "106000" }, { "n_SmeltingStep": "72", "n_NextStepRate": "290000", "n_UpgradePrice": "7", "n_IncreaseValueRate": "107500" }, { "n_SmeltingStep": "73", "n_NextStepRate": "280000", "n_UpgradePrice": "7", "n_IncreaseValueRate": "109000" }, { "n_SmeltingStep": "74", "n_NextStepRate": "270000", "n_UpgradePrice": "7", "n_IncreaseValueRate": "110500" }, { "n_SmeltingStep": "75", "n_NextStepRate": "260000", "n_UpgradePrice": "7", "n_IncreaseValueRate": "112000" }, { "n_SmeltingStep": "76", "n_NextStepRate": "250000", "n_UpgradePrice": "7", "n_IncreaseValueRate": "113500" }, { "n_SmeltingStep": "77", "n_NextStepRate": "240000", "n_UpgradePrice": "7", "n_IncreaseValueRate": "115000" }, { "n_SmeltingStep": "78", "n_NextStepRate": "230000", "n_UpgradePrice": "7", "n_IncreaseValueRate": "116500" }, { "n_SmeltingStep": "79", "n_NextStepRate": "220000", "n_UpgradePrice": "7", "n_IncreaseValueRate": "118000" }, { "n_SmeltingStep": "80", "n_NextStepRate": "210000", "n_UpgradePrice": "7", "n_IncreaseValueRate": "119500" }, { "n_SmeltingStep": "81", "n_NextStepRate": "200000", "n_UpgradePrice": "8", "n_IncreaseValueRate": "121000" }, { "n_SmeltingStep": "82", "n_NextStepRate": "190000", "n_UpgradePrice": "8", "n_IncreaseValueRate": "122500" }, { "n_SmeltingStep": "83", "n_NextStepRate": "180000", "n_UpgradePrice": "8", "n_IncreaseValueRate": "124000" }, { "n_SmeltingStep": "84", "n_NextStepRate": "170000", "n_UpgradePrice": "8", "n_IncreaseValueRate": "125500" }, { "n_SmeltingStep": "85", "n_NextStepRate": "160000", "n_UpgradePrice": "8", "n_IncreaseValueRate": "127000" }, { "n_SmeltingStep": "86", "n_NextStepRate": "150000", "n_UpgradePrice": "8", "n_IncreaseValueRate": "128500" }, { "n_SmeltingStep": "87", "n_NextStepRate": "140000", "n_UpgradePrice": "8", "n_IncreaseValueRate": "130000" }, { "n_SmeltingStep": "88", "n_NextStepRate": "130000", "n_UpgradePrice": "8", "n_IncreaseValueRate": "131500" }, { "n_SmeltingStep": "89", "n_NextStepRate": "120000", "n_UpgradePrice": "8", "n_IncreaseValueRate": "133000" }, { "n_SmeltingStep": "90", "n_NextStepRate": "110000", "n_UpgradePrice": "8", "n_IncreaseValueRate": "134500" }, { "n_SmeltingStep": "91", "n_NextStepRate": "100000", "n_UpgradePrice": "9", "n_IncreaseValueRate": "136000" }, { "n_SmeltingStep": "92", "n_NextStepRate": "90000", "n_UpgradePrice": "9", "n_IncreaseValueRate": "137500" }, { "n_SmeltingStep": "93", "n_NextStepRate": "80000", "n_UpgradePrice": "9", "n_IncreaseValueRate": "139000" }, { "n_SmeltingStep": "94", "n_NextStepRate": "70000", "n_UpgradePrice": "9", "n_IncreaseValueRate": "140500" }, { "n_SmeltingStep": "95", "n_NextStepRate": "60000", "n_UpgradePrice": "9", "n_IncreaseValueRate": "142000" }, { "n_SmeltingStep": "96", "n_NextStepRate": "50000", "n_UpgradePrice": "9", "n_IncreaseValueRate": "143500" }, { "n_SmeltingStep": "97", "n_NextStepRate": "40000", "n_UpgradePrice": "9", "n_IncreaseValueRate": "145000" }, { "n_SmeltingStep": "98", "n_NextStepRate": "30000", "n_UpgradePrice": "9", "n_IncreaseValueRate": "146500" }, { "n_SmeltingStep": "99", "n_NextStepRate": "20000", "n_UpgradePrice": "9", "n_IncreaseValueRate": "148000" } ] } function Get_EquipmentSlotUpgradeTable() { return [ { "e_EquipParts": "Weapon", "e_EquipAttribute": "Physics ", "n_EquipSlotName": "2001", "e_OptionType": "ATK_Multiplier", "n_DefaultValue": "3", "f_LevelPerValue": "1.5", "f_BalanceConstant": "0.032", "n_ConsumeGoodsID": "101", "n_DefaultValuePrice": "10", "f_LevelPerValuePrice": "5", "f_BalanceConstantPrice": "0.015" }, { "e_EquipParts": "Weapon", "e_EquipAttribute": "Magic", "n_EquipSlotName": "2002", "e_OptionType": "ATK_Multiplier", "n_DefaultValue": "3", "f_LevelPerValue": "1.5", "f_BalanceConstant": "0.032", "n_ConsumeGoodsID": "101", "n_DefaultValuePrice": "10", "f_LevelPerValuePrice": "5", "f_BalanceConstantPrice": "0.015" }, { "e_EquipParts": "Weapon", "e_EquipAttribute": "None", "n_EquipSlotName": "2003", "e_OptionType": "Stat_EXTRA", "n_DefaultValue": "3", "f_LevelPerValue": "1.5", "f_BalanceConstant": "0.032", "n_ConsumeGoodsID": "101", "n_DefaultValuePrice": "10", "f_LevelPerValuePrice": "5", "f_BalanceConstantPrice": "0.015" }, { "e_EquipParts": "Armor", "e_EquipAttribute": "None", "n_EquipSlotName": "2004", "e_OptionType": "DEF", "n_DefaultValue": "1", "f_LevelPerValue": "0.5", "f_BalanceConstant": "0.025", "n_ConsumeGoodsID": "102", "n_DefaultValuePrice": "5", "f_LevelPerValuePrice": "3", "f_BalanceConstantPrice": "0.025" }, { "e_EquipParts": "Armor", "e_EquipAttribute": "None", "n_EquipSlotName": "2005", "e_OptionType": "M_DEF", "n_DefaultValue": "1", "f_LevelPerValue": "0.5", "f_BalanceConstant": "0.025", "n_ConsumeGoodsID": "102", "n_DefaultValuePrice": "5", "f_LevelPerValuePrice": "3", "f_BalanceConstantPrice": "0.025" }, { "e_EquipParts": "Helmet", "e_EquipAttribute": "None", "n_EquipSlotName": "2006", "e_OptionType": "M_DEF", "n_DefaultValue": "1", "f_LevelPerValue": "0.5", "f_BalanceConstant": "0.025", "n_ConsumeGoodsID": "103", "n_DefaultValuePrice": "5", "f_LevelPerValuePrice": "3", "f_BalanceConstantPrice": "0.025" }, { "e_EquipParts": "Extra", "e_EquipAttribute": "None", "n_EquipSlotName": "2007", "e_OptionType": "M_DEF", "n_DefaultValue": "1", "f_LevelPerValue": "0.5", "f_BalanceConstant": "0.025", "n_ConsumeGoodsID": "104", "n_DefaultValuePrice": "5", "f_LevelPerValuePrice": "3", "f_BalanceConstantPrice": "0.025" }, { "e_EquipParts": "Necklace", "e_EquipAttribute": "None", "n_EquipSlotName": "2008", "e_OptionType": "M_DEF", "n_DefaultValue": "1", "f_LevelPerValue": "0.5", "f_BalanceConstant": "0.025", "n_ConsumeGoodsID": "105", "n_DefaultValuePrice": "5", "f_LevelPerValuePrice": "3", "f_BalanceConstantPrice": "0.025" }, { "e_EquipParts": "Ring", "e_EquipAttribute": "None", "n_EquipSlotName": "2009", "e_OptionType": "M_DEF", "n_DefaultValue": "1", "f_LevelPerValue": "0.5", "f_BalanceConstant": "0.025", "n_ConsumeGoodsID": "106", "n_DefaultValuePrice": "5", "f_LevelPerValuePrice": "3", "f_BalanceConstantPrice": "0.025" } ] } function Get_PlayOCoupons() { var poc = JSON.parse(server.GetTitleInternalData("PlayO").Data.PlayO); return poc.Coupons; } function Get_K_Value(lv, balance, defaultval, perlv, abandon = true) { if (lv <= 0) return 0; lv = parseFloat(lv); balance = parseFloat(balance); defaultval = parseFloat(defaultval); perlv = parseFloat(perlv); let val; if (Math.abs(balance) < 0.000001) { val = defaultval + lv * perlv; } else { const base = lv * perlv; const exponent = balance * Math.sqrt(lv); val = defaultval + Math.pow(base, exponent); } val *= 0.0001; if (abandon) { val = Math.floor(val); } return val; } function getRandomIntInclusive(min, max) { min = Math.ceil(parseInt(min)); max = Math.floor(parseInt(max)); return Math.floor(Math.random() * (max - min + 1)) + min; } function IsRateTrue1000000(rate) { return Math.floor(Math.random() * 1000000) < rate; } function Get_CurKoreaTime() { var curServerTime = new Date(); return new Date(curServerTime.setHours(curServerTime.getHours() + 9)); } function CheckNullOrEmpty(value) { if (value == "" || value == null || value == undefined || (value != null && typeof value == "object" && !Object.keys(value).length)) return true; return false; } function getRandomFloat(min, max) { return Math.random() * (max - min) + min; } function getRandomInt(min, max) { return Math.floor(Math.random() * (max - min + 1)) + min; } function sleep(milliseconds) { const date = Date.now(); let currentDate = null; do { currentDate = Date.now(); } while (currentDate - date < milliseconds); } function formatString(template, values) { return template.replace(/{(\d+)}/g, (match, index) => values[index] || match); }