diff --git a/myscripts/collateDomain.js b/myscripts/collateDomain.js index feb50e6e1..091f5a376 100644 --- a/myscripts/collateDomain.js +++ b/myscripts/collateDomain.js @@ -92,6 +92,10 @@ function collateDomain(lang) { data.description = sanitizeDescription(language[obj.DescTextMapHash]); if(obj.Id === 5120 || obj.Id === 5121 || obj.Id === 5122 || obj.Id === 5123) obj.CityID = 1; // Peak of Vindagnyr region fix from Liyue to Mondstadt + if(obj.Id >= 5258 && obj.Id <= 5265) obj.CityID = 2; // Taishan Mansion in Liyue + if(obj.Id >= 5214 && obj.Id <= 5225) obj.CityID = 2; // Hidden Palace of Lianshan Formula in Liyue + if(obj.Id >= 5200 && obj.Id <= 5207) obj.CityID = 3; // Slumbering Court in Inazuma, and Momiji-Dyed Court + data.region = language[xcity.find(city => city.CityId === obj.CityID).CityNameTextMapHash]; data.recommendedlevel = obj.ShowLevel; diff --git a/myscripts/collateEnemy.js b/myscripts/collateEnemy.js index 14cc76df4..f43e0f63d 100644 --- a/myscripts/collateEnemy.js +++ b/myscripts/collateEnemy.js @@ -19,7 +19,7 @@ UI_CODEX_ANIMAL_CATEGORY_HILICHURL function round(number, decimalplaces) { let mult = Math.pow(10, decimalplaces); let out = Math.round(number * mult) / mult; - if(out === null) console.log('enemy null resistance rounding'); +if(out === null) console.log('enemy null resistance rounding'); return out; } @@ -81,12 +81,19 @@ function collateEnemy(lang) { } else if(obj.Id === 26050801) { let rewardpreview = xpreview.find(pre => pre.Id === 15177).PreviewItems.filter(pre => pre.Id); data.rewardpreview = mapRewardList(rewardpreview, language); + } else if(obj.Id === 29060201) { // raiden shogun lvl90 + let rewardpreview = xpreview.find(pre => pre.Id === 15038).PreviewItems.filter(pre => pre.Id); + data.rewardpreview = mapRewardList(rewardpreview, language); } } - if(!data.rewardpreview) console.log('no reward list for '+data.name); + if(!data.rewardpreview) { + console.log('no reward list for '+data.name); + data.rewardpreview = []; + } let sub = obj.SubType || 'CODEX_SUBTYPE_ELEMENTAL'; sub = sub.slice(sub.lastIndexOf('_')+1); + // console.log(sub); sub = xmanualtext.find(m => m.TextMapId === `UI_CODEX_ANIMAL_CATEGORY_${sub}`).TextMapContentTextMapHash; data.enemytype = mon.SecurityLevel || 'COMMON'; data.category = language[sub]; @@ -150,6 +157,7 @@ function findInvestigation(monId) { else if(monId === 20060601) monId = 20060201; // Pyro Specter else if(monId === 20060501) monId = 20060201; // Electro Specter else if(monId === 20060401) monId = 20060201; // Cryo Specter + // else if // Hydro Cicin // Electro Cicin @@ -219,17 +227,33 @@ const unusualreward = [ ] +// use id: 21010101 function fixAnimalCodexSubType() { const fs = require('fs'); let obfu = require('../[Obfuscated] ExcelBinOutput/AnimalCodexExcelConfigData.json'); let out = require('../ExcelBinOutput/AnimalCodexExcelConfigData.json'); for(let ob of obfu) { - let match = out.find(ele => ele.Id === ob.ODDLMOCCOPN); - match.SubType = ob.JOKMGBKIIKJ; + let match = out.find(ele => ele.Id === ob.KABAHENDGOO); // replace with ID + match.SubType = ob.JKOLEMPKHMI; // replace with CODEX_SUBTYPE_HILICHURL } out = JSON.stringify(out, null, '\t'); fs.writeFileSync('../ExcelBinOutput/AnimalCodexExcelConfigData.json', out); } fixAnimalCodexSubType(); +function fixInvestigationMonsterList() { + const fs = require('fs'); + let obfu = require('../[Obfuscated] ExcelBinOutput/InvestigationMonsterConfigData.json'); + let out = require('../ExcelBinOutput/InvestigationMonsterConfigData.json'); + + for(let ob of obfu) { + let match = out.find(ele => ele.Id === ob.JNAAGOAENLE); // replace with ID + match.MonsterIdList = ob.ENEMLKMDNFJ; // replace with CODEX_SUBTYPE_HILICHURL + } + + out = JSON.stringify(out, null, '\t'); + fs.writeFileSync('../ExcelBinOutput/InvestigationMonsterConfigData.json', out); +} +fixInvestigationMonsterList(); + module.exports = collateEnemy; diff --git a/myscripts/collateOutfit.js b/myscripts/collateOutfit.js index 52e8cc510..d07ea3e8a 100644 --- a/myscripts/collateOutfit.js +++ b/myscripts/collateOutfit.js @@ -3,10 +3,11 @@ const xsource = getExcel('MaterialSourceDataExcelConfigData'); const xcostume = getExcel('AvatarCostumeExcelConfigData'); const xavatar = getExcel('AvatarExcelConfigData'); +// for AvatarCostumeExcelConfigData const propertyMap = { - Id: 'BBMGPIGONBN', - AvatarId: 'PIFBBDBABNO', - IconName: 'JBHPBOFFFNN' + Id: 'KBBEOGFDOOL', + AvatarId: 'LDPMEMMAELP', // 10000003 + IconName: 'BBPJLOILMEA' // UI_AvatarIcon_QinCostumeSea } // taken from collateCharacter.js diff --git a/myscripts/myscript.js b/myscripts/myscript.js index 550759ec5..fcd56fc76 100644 --- a/myscripts/myscript.js +++ b/myscripts/myscript.js @@ -109,19 +109,19 @@ function exportData(folder, collateFunc, englishonly, skipwrite) { // exportData('artifacts', require('./collateArtifact.js')); // exportData('foods', require('./collateFood')); // exportData('materials', require('./collateMaterial')); // run twice -// exportData('domains', require('./collateDomain')); // run twice // remember to add back recommendedelements and disorder and entrypicpath +exportData('domains', require('./collateDomain')); // run twice // remember to add back recommendedelements and disorder and entrypicpath // exportData('enemies', require('./collateEnemy')); -// exportData('domains', require('./collateDomainMonsterList')); // run only after both domains and enemies have run. sync +// exportData('domains', require('./collateDomainMonsterList')); // run only after both domains and enemies have run. sync. must do after domain // exportCurve('enemies', 'MonsterCurveExcelConfigData'); // exportData('outfits', require('./collateOutfit')); // exportData('windgliders', require('./collateWindGlider')); // exportData('animals', require('./collateAnimal')); -// exportData('namecards', require('./collateNamecard')); -// exportData('geographies', require('./collateGeography')); +// exportData('namecards', require('./collateNamecard')); // not done +// exportData('geographies', require('./collateGeography')); // not done // exportData('achievements', require('./collateAchievement')); // exportData('achievementgroups', require('./collateAchievementGroup')); -exportData('commissions', require('./collateCommission'), true); +// exportData('commissions', require('./collateCommission'), true); // // exportData('fishingpoints', require('./collateFishingPoint'));