d3_mpq 0.0.7 → 0.0.9
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/bindata_ext/mod_code.rb +3 -2
- data/lib/d3_mpq/analyzer.rb +9 -0
- data/lib/d3_mpq/commands.rb +3 -0
- data/lib/d3_mpq/core_data/game_balance/item_enhancements.rb +14 -5
- data/lib/d3_mpq/core_data/game_balance/recipes.rb +23 -0
- data/lib/d3_mpq/core_data/game_balance.rb +1 -0
- data/lib/d3_mpq/csv_generator/affix_list.rb +1 -1
- data/lib/d3_mpq/csv_generator/item_enhancements.rb +34 -0
- data/lib/d3_mpq/csv_generator/recipe_details.rb +23 -0
- data/lib/d3_mpq/csv_generator/recipes.rb +24 -0
- data/lib/d3_mpq/csv_generator.rb +4 -1
- data/lib/d3_mpq/recipe.rb +19 -0
- data/lib/d3_mpq/version.rb +1 -1
- data/lib/d3_mpq/version.rb~ +1 -1
- data/lib/d3_mpq.rb +1 -0
- data/spec/fixtures/Recipe/Axe Bad Data.rcp +0 -0
- data/spec/fixtures/Recipe/Convert_Tier_01A_Tier_02A.rcp +0 -0
- data/spec/fixtures/Recipe/Convert_Tier_01B_Tier_02B.rcp +0 -0
- data/spec/fixtures/Recipe/Convert_Tier_01C_Tier_02C.rcp +0 -0
- data/spec/fixtures/Recipe/Convert_Tier_01D_Tier_02D.rcp +0 -0
- data/spec/fixtures/Recipe/Convert_Tier_02A_Tier_03A.rcp +0 -0
- data/spec/fixtures/Recipe/Convert_Tier_02B_Tier_03B.rcp +0 -0
- data/spec/fixtures/Recipe/Convert_Tier_02C_Tier_03C.rcp +0 -0
- data/spec/fixtures/Recipe/Convert_Tier_02D_Tier_03D.rcp +0 -0
- data/spec/fixtures/Recipe/Convert_Tier_03A_Tier_04A.rcp +0 -0
- data/spec/fixtures/Recipe/Convert_Tier_03B_Tier_04B.rcp +0 -0
- data/spec/fixtures/Recipe/Convert_Tier_03C_Tier_04C.rcp +0 -0
- data/spec/fixtures/Recipe/Convert_Tier_03D_Tier_04D.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Amethyst_01_02.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Amethyst_02_03.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Amethyst_03_04.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Amethyst_04_05.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Amethyst_05_06.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Amethyst_06_07.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Amethyst_07_08.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Amethyst_08_09.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Amethyst_09_10.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Amethyst_10_11.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Amethyst_11_12.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Amethyst_12_13.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Amethyst_13_14.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Emerald_01_02.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Emerald_02_03.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Emerald_03_04.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Emerald_04_05.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Emerald_05_06.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Emerald_06_07.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Emerald_07_08.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Emerald_08_09.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Emerald_09_10.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Emerald_10_11.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Emerald_11_12.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Emerald_12_13.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Emerald_13_14.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Ruby_01_02.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Ruby_02_03.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Ruby_03_04.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Ruby_04_05.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Ruby_05_06.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Ruby_06_07.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Ruby_07_08.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Ruby_08_09.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Ruby_09_10.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Ruby_10_11.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Ruby_11_12.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Ruby_12_13.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Ruby_13_14.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Topaz_01_02.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Topaz_02_03.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Topaz_03_04.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Topaz_04_05.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Topaz_05_06.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Topaz_06_07.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Topaz_07_08.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Topaz_08_09.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Topaz_09_10.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Topaz_10_11.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Topaz_11_12.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Topaz_12_13.rcp +0 -0
- data/spec/fixtures/Recipe/GemCombine_Topaz_13_14.rcp +0 -0
- data/spec/fixtures/Recipe/Quest_Act1_Blacksmith_AllReward.rcp +0 -0
- data/spec/fixtures/Recipe/Quest_Act1_NephPower_AllReward.rcp +0 -0
- data/spec/fixtures/Recipe/Quest_Act1_SkeletonKing_BarbReward.rcp +0 -0
- data/spec/fixtures/Recipe/Quest_Act1_SkeletonKing_DHReward.rcp +0 -0
- data/spec/fixtures/Recipe/Quest_Act1_SkeletonKing_MonkReward.rcp +0 -0
- data/spec/fixtures/Recipe/Quest_Act1_SkeletonKing_WDReward.rcp +0 -0
- data/spec/fixtures/Recipe/Quest_Act1_SkeletonKing_WizReward.rcp +0 -0
- data/spec/fixtures/Recipe/Quest_Act1_Town_BarbReward.rcp +0 -0
- data/spec/fixtures/Recipe/Quest_Act1_Town_DHReward.rcp +0 -0
- data/spec/fixtures/Recipe/Quest_Act1_Town_MonkReward.rcp +0 -0
- data/spec/fixtures/Recipe/Quest_Act1_Town_WDReward.rcp +0 -0
- data/spec/fixtures/Recipe/Quest_Act1_Town_WizReward.rcp +0 -0
- data/spec/fixtures/Recipe/Quest_RespecTome_Reward.rcp +0 -0
- data/spec/fixtures/Recipe/Quest_StoneofRecall.rcp +0 -0
- data/spec/fixtures/Recipe/Quest_UnlockBlacksmithing.rcp +0 -0
- data/spec/fixtures/Recipe/Rune_01_02.rcp +0 -0
- data/spec/fixtures/Recipe/Rune_02_03.rcp +0 -0
- data/spec/fixtures/Recipe/Rune_03_04.rcp +0 -0
- data/spec/fixtures/Recipe/Rune_04_05.rcp +0 -0
- data/spec/fixtures/Recipe/Rune_05_06.rcp +0 -0
- data/spec/fixtures/Recipe/Rune_06_07.rcp +0 -0
- data/spec/fixtures/Recipe/Smith_StaffofCow.rcp +0 -0
- data/spec/fixtures/Recipe/Smith_StaffofCow_Hell.rcp +0 -0
- data/spec/fixtures/Recipe/Smith_StaffofCow_Inferno.rcp +0 -0
- data/spec/fixtures/Recipe/Smith_StaffofCow_Nightmare.rcp +0 -0
- data/spec/fixtures/Recipe/StoneOfWealth_Reward.rcp +0 -0
- data/spec/fixtures/Recipe/T01_Armor_Belt.rcp +0 -0
- data/spec/fixtures/Recipe/T01_Armor_Boots.rcp +0 -0
- data/spec/fixtures/Recipe/T01_Armor_Bracers.rcp +0 -0
- data/spec/fixtures/Recipe/T01_Armor_ChampionsBelt.rcp +0 -0
- data/spec/fixtures/Recipe/T01_Armor_Chest.rcp +0 -0
- data/spec/fixtures/Recipe/T01_Armor_Cloak.rcp +0 -0
- data/spec/fixtures/Recipe/T01_Armor_Gloves.rcp +0 -0
- data/spec/fixtures/Recipe/T01_Armor_Helm.rcp +0 -0
- data/spec/fixtures/Recipe/T01_Armor_Pants.rcp +0 -0
- data/spec/fixtures/Recipe/T01_Armor_Shield.rcp +0 -0
- data/spec/fixtures/Recipe/T01_Armor_Shoulders.rcp +0 -0
- data/spec/fixtures/Recipe/T01_Armor_SpiritStone.rcp +0 -0
- data/spec/fixtures/Recipe/T01_Armor_VoodooMask.rcp +0 -0
- data/spec/fixtures/Recipe/T01_Armor_WizardHat.rcp +0 -0
- data/spec/fixtures/Recipe/T01_Weapon_Axe_1H.rcp +0 -0
- data/spec/fixtures/Recipe/T01_Weapon_Axe_2H.rcp +0 -0
- data/spec/fixtures/Recipe/T01_Weapon_Bow.rcp +0 -0
- data/spec/fixtures/Recipe/T01_Weapon_Crossbow.rcp +0 -0
- data/spec/fixtures/Recipe/T01_Weapon_Dagger.rcp +0 -0
- data/spec/fixtures/Recipe/T01_Weapon_Fist.rcp +0 -0
- data/spec/fixtures/Recipe/T01_Weapon_HandCrossbow.rcp +0 -0
- data/spec/fixtures/Recipe/T01_Weapon_Mace_1H.rcp +0 -0
- data/spec/fixtures/Recipe/T01_Weapon_Mace_2H.rcp +0 -0
- data/spec/fixtures/Recipe/T01_Weapon_Quiver.rcp +0 -0
- data/spec/fixtures/Recipe/T01_Weapon_Sword_1H.rcp +0 -0
- data/spec/fixtures/Recipe/T01_Weapon_Sword_2H.rcp +0 -0
- data/spec/fixtures/Recipe/T01_Weapon_Wand.rcp +0 -0
- data/spec/fixtures/Recipe/T02_Armor_Boots.rcp +0 -0
- data/spec/fixtures/Recipe/T02_Armor_Bracers.rcp +0 -0
- data/spec/fixtures/Recipe/T02_Armor_ChampionsBelt.rcp +0 -0
- data/spec/fixtures/Recipe/T02_Armor_Cloak.rcp +0 -0
- data/spec/fixtures/Recipe/T02_Armor_Gloves.rcp +0 -0
- data/spec/fixtures/Recipe/T02_Armor_Helm.rcp +0 -0
- data/spec/fixtures/Recipe/T02_Armor_Pants.rcp +0 -0
- data/spec/fixtures/Recipe/T02_Armor_Shield.rcp +0 -0
- data/spec/fixtures/Recipe/T02_Armor_Shoulders.rcp +0 -0
- data/spec/fixtures/Recipe/T02_Armor_SpiritStone.rcp +0 -0
- data/spec/fixtures/Recipe/T02_Armor_VoodooMask.rcp +0 -0
- data/spec/fixtures/Recipe/T02_Armor_WizardHat.rcp +0 -0
- data/spec/fixtures/Recipe/T02_Weapon_Axe_1H.rcp +0 -0
- data/spec/fixtures/Recipe/T02_Weapon_CeremonialKnife.rcp +0 -0
- data/spec/fixtures/Recipe/T02_Weapon_CombatStaff.rcp +0 -0
- data/spec/fixtures/Recipe/T02_Weapon_HandCrossbow.rcp +0 -0
- data/spec/fixtures/Recipe/T02_Weapon_MightyWeapon_1H.rcp +0 -0
- data/spec/fixtures/Recipe/T02_Weapon_Orb.rcp +0 -0
- data/spec/fixtures/Recipe/T02_Weapon_Quiver.rcp +0 -0
- data/spec/fixtures/Recipe/T02_Weapon_Sword_2H.rcp +0 -0
- data/spec/fixtures/Recipe/T02_Weapon_Wand.rcp +0 -0
- data/spec/fixtures/Recipe/T03_Armor_Belt.rcp +0 -0
- data/spec/fixtures/Recipe/T03_Armor_Boots.rcp +0 -0
- data/spec/fixtures/Recipe/T03_Armor_Bracers.rcp +0 -0
- data/spec/fixtures/Recipe/T03_Armor_Chest.rcp +0 -0
- data/spec/fixtures/Recipe/T03_Armor_Gloves.rcp +0 -0
- data/spec/fixtures/Recipe/T03_Armor_Helm.rcp +0 -0
- data/spec/fixtures/Recipe/T03_Armor_Pants.rcp +0 -0
- data/spec/fixtures/Recipe/T03_Armor_Shield.rcp +0 -0
- data/spec/fixtures/Recipe/T03_Armor_Shoulders.rcp +0 -0
- data/spec/fixtures/Recipe/T03_Weapon_Axe_1H.rcp +0 -0
- data/spec/fixtures/Recipe/T03_Weapon_Bow.rcp +0 -0
- data/spec/fixtures/Recipe/T03_Weapon_CombatStaff.rcp +0 -0
- data/spec/fixtures/Recipe/T03_Weapon_Dagger.rcp +0 -0
- data/spec/fixtures/Recipe/T03_Weapon_Fist.rcp +0 -0
- data/spec/fixtures/Recipe/T03_Weapon_Mace_1H.rcp +0 -0
- data/spec/fixtures/Recipe/T03_Weapon_Mace_2H.rcp +0 -0
- data/spec/fixtures/Recipe/T03_Weapon_Mojo.rcp +0 -0
- data/spec/fixtures/Recipe/T03_Weapon_Orb.rcp +0 -0
- data/spec/fixtures/Recipe/T03_Weapon_Quiver.rcp +0 -0
- data/spec/fixtures/Recipe/T03_Weapon_Sword_2H.rcp +0 -0
- data/spec/fixtures/Recipe/T03_Weapon_Wand.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Armor_Belt.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Armor_Boots.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Armor_Bracers.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Armor_Chest.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Armor_Gloves.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Armor_Helm.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Armor_Pants.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Armor_Shield.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Armor_Shoulders.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Legendary_Armor_Belt.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Legendary_Armor_Shield.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Legendary_Set_Normal_001_Chest.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Legendary_Set_Normal_001_Shoulders.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Legendary_Set_Normal_001_Sword_1H.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Legendary_Set_Normal_002_Boots.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Legendary_Set_Normal_002_Gloves.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Legendary_Set_Normal_002_Helm.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Legendary_Set_Normal_002_Pants.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Legendary_Weapon_Bow.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Legendary_Weapon_CeremonialDagger.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Legendary_Weapon_CombatStaff.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Legendary_Weapon_MightyWeapon2H.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Legendary_Weapon_Wand.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Weapon_Axe_1H.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Weapon_Axe_2H.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Weapon_CombatStaff.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Weapon_Crossbow.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Weapon_Dagger.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Weapon_Fist.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Weapon_HandCrossbow.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Weapon_Mace_1H.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Weapon_Mojo.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Weapon_Quiver.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Weapon_Staff.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Weapon_Sword_1H.rcp +0 -0
- data/spec/fixtures/Recipe/T04_Weapon_Wand.rcp +0 -0
- data/spec/fixtures/Recipe/T05_Armor_Boots.rcp +0 -0
- data/spec/fixtures/Recipe/T05_Armor_Bracers.rcp +0 -0
- data/spec/fixtures/Recipe/T05_Armor_ChampionsBelt.rcp +0 -0
- data/spec/fixtures/Recipe/T05_Armor_Chest.rcp +0 -0
- data/spec/fixtures/Recipe/T05_Armor_Cloak.rcp +0 -0
- data/spec/fixtures/Recipe/T05_Armor_Gloves.rcp +0 -0
- data/spec/fixtures/Recipe/T05_Armor_Helm.rcp +0 -0
- data/spec/fixtures/Recipe/T05_Armor_Pants.rcp +0 -0
- data/spec/fixtures/Recipe/T05_Armor_Shield.rcp +0 -0
- data/spec/fixtures/Recipe/T05_Armor_Shoulders.rcp +0 -0
- data/spec/fixtures/Recipe/T05_Armor_WizardHat.rcp +0 -0
- data/spec/fixtures/Recipe/T05_Legendary_Set_Nightmare_001_Belt.rcp +0 -0
- data/spec/fixtures/Recipe/T05_Legendary_Set_Nightmare_001_Boots.rcp +0 -0
- data/spec/fixtures/Recipe/T05_Legendary_Set_Nightmare_001_Pants.rcp +0 -0
- data/spec/fixtures/Recipe/T05_Legendary_Weapon_Axe_1H.rcp +0 -0
- data/spec/fixtures/Recipe/T05_Legendary_Weapon_Mojo.rcp +0 -0
- data/spec/fixtures/Recipe/T05_Legendary_Weapon_Staff.rcp +0 -0
- data/spec/fixtures/Recipe/T05_Legendary_Weapon_Sword_2H.rcp +0 -0
- data/spec/fixtures/Recipe/T05_Weapon_Axe_1H.rcp +0 -0
- data/spec/fixtures/Recipe/T05_Weapon_Bow.rcp +0 -0
- data/spec/fixtures/Recipe/T05_Weapon_CeremonialKnife.rcp +0 -0
- data/spec/fixtures/Recipe/T05_Weapon_CombatStaff.rcp +0 -0
- data/spec/fixtures/Recipe/T05_Weapon_Dagger.rcp +0 -0
- data/spec/fixtures/Recipe/T05_Weapon_Fist.rcp +0 -0
- data/spec/fixtures/Recipe/T05_Weapon_Mace_1H.rcp +0 -0
- data/spec/fixtures/Recipe/T05_Weapon_MightyWeapon_2H.rcp +0 -0
- data/spec/fixtures/Recipe/T05_Weapon_Quiver.rcp +0 -0
- data/spec/fixtures/Recipe/T05_Weapon_Wand.rcp +0 -0
- data/spec/fixtures/Recipe/T06_Armor_Belt.rcp +0 -0
- data/spec/fixtures/Recipe/T06_Armor_Boots.rcp +0 -0
- data/spec/fixtures/Recipe/T06_Armor_Bracers.rcp +0 -0
- data/spec/fixtures/Recipe/T06_Armor_Chest.rcp +0 -0
- data/spec/fixtures/Recipe/T06_Armor_Gloves.rcp +0 -0
- data/spec/fixtures/Recipe/T06_Armor_Helm.rcp +0 -0
- data/spec/fixtures/Recipe/T06_Armor_Pants.rcp +0 -0
- data/spec/fixtures/Recipe/T06_Armor_Shield.rcp +0 -0
- data/spec/fixtures/Recipe/T06_Armor_Shoulders.rcp +0 -0
- data/spec/fixtures/Recipe/T06_Armor_SpiritStone.rcp +0 -0
- data/spec/fixtures/Recipe/T06_Armor_VoodooMask.rcp +0 -0
- data/spec/fixtures/Recipe/T06_Armor_WizardHat.rcp +0 -0
- data/spec/fixtures/Recipe/T06_Legendary_Armor_Gloves.rcp +0 -0
- data/spec/fixtures/Recipe/T06_Legendary_Set_Nightmare_002_Bracers.rcp +0 -0
- data/spec/fixtures/Recipe/T06_Legendary_Set_Nightmare_002_Chest.rcp +0 -0
- data/spec/fixtures/Recipe/T06_Legendary_Set_Nightmare_002_Helm.rcp +0 -0
- data/spec/fixtures/Recipe/T06_Legendary_Set_Nightmare_002_Shoulders.rcp +0 -0
- data/spec/fixtures/Recipe/T06_Legendary_Weapon_HandCrossbow.rcp +0 -0
- data/spec/fixtures/Recipe/T06_Weapon_Axe_2H.rcp +0 -0
- data/spec/fixtures/Recipe/T06_Weapon_Dagger.rcp +0 -0
- data/spec/fixtures/Recipe/T06_Weapon_Fist.rcp +0 -0
- data/spec/fixtures/Recipe/T06_Weapon_HandCrossbow.rcp +0 -0
- data/spec/fixtures/Recipe/T06_Weapon_MightyWeapon_1H.rcp +0 -0
- data/spec/fixtures/Recipe/T06_Weapon_Mojo.rcp +0 -0
- data/spec/fixtures/Recipe/T06_Weapon_Orb.rcp +0 -0
- data/spec/fixtures/Recipe/T06_Weapon_Staff.rcp +0 -0
- data/spec/fixtures/Recipe/T06_Weapon_Sword_1H.rcp +0 -0
- data/spec/fixtures/Recipe/T06_Weapon_Sword_2H.rcp +0 -0
- data/spec/fixtures/Recipe/T07_Armor_Belt.rcp +0 -0
- data/spec/fixtures/Recipe/T07_Armor_Boots.rcp +0 -0
- data/spec/fixtures/Recipe/T07_Armor_Bracers.rcp +0 -0
- data/spec/fixtures/Recipe/T07_Armor_Chest.rcp +0 -0
- data/spec/fixtures/Recipe/T07_Armor_Cloak.rcp +0 -0
- data/spec/fixtures/Recipe/T07_Armor_Gloves.rcp +0 -0
- data/spec/fixtures/Recipe/T07_Armor_Helm.rcp +0 -0
- data/spec/fixtures/Recipe/T07_Armor_Pants.rcp +0 -0
- data/spec/fixtures/Recipe/T07_Armor_Shield.rcp +0 -0
- data/spec/fixtures/Recipe/T07_Armor_Shoulders.rcp +0 -0
- data/spec/fixtures/Recipe/T07_Legendary_Set_Hell_001_Boots.rcp +0 -0
- data/spec/fixtures/Recipe/T07_Legendary_Set_Hell_001_Gloves.rcp +0 -0
- data/spec/fixtures/Recipe/T07_Legendary_Set_Hell_001_Pants.rcp +0 -0
- data/spec/fixtures/Recipe/T07_Legendary_Set_Hell_001_Shoulders.rcp +0 -0
- data/spec/fixtures/Recipe/T07_Legendary_Weapon_Fist.rcp +0 -0
- data/spec/fixtures/Recipe/T07_Legendary_Weapon_Mace_2H.rcp +0 -0
- data/spec/fixtures/Recipe/T07_Legendary_Weapon_MightyWeapon_1H.rcp +0 -0
- data/spec/fixtures/Recipe/T07_Legendary_Weapon_Orb.rcp +0 -0
- data/spec/fixtures/Recipe/T07_Weapon_Axe_1H.rcp +0 -0
- data/spec/fixtures/Recipe/T07_Weapon_Bow.rcp +0 -0
- data/spec/fixtures/Recipe/T07_Weapon_CeremonialKnife.rcp +0 -0
- data/spec/fixtures/Recipe/T07_Weapon_CombatStaff.rcp +0 -0
- data/spec/fixtures/Recipe/T07_Weapon_Crossbow.rcp +0 -0
- data/spec/fixtures/Recipe/T07_Weapon_Dagger.rcp +0 -0
- data/spec/fixtures/Recipe/T07_Weapon_Mace_1H.rcp +0 -0
- data/spec/fixtures/Recipe/T07_Weapon_Mace_2H.rcp +0 -0
- data/spec/fixtures/Recipe/T07_Weapon_Quiver.rcp +0 -0
- data/spec/fixtures/Recipe/T07_Weapon_Sword_2H.rcp +0 -0
- data/spec/fixtures/Recipe/T07_Weapon_Wand.rcp +0 -0
- data/spec/fixtures/Recipe/T08_Armor_Belt.rcp +0 -0
- data/spec/fixtures/Recipe/T08_Armor_Boots.rcp +0 -0
- data/spec/fixtures/Recipe/T08_Armor_Bracers.rcp +0 -0
- data/spec/fixtures/Recipe/T08_Armor_ChampionsBelt.rcp +0 -0
- data/spec/fixtures/Recipe/T08_Armor_Chest.rcp +0 -0
- data/spec/fixtures/Recipe/T08_Armor_Cloak.rcp +0 -0
- data/spec/fixtures/Recipe/T08_Armor_Gloves.rcp +0 -0
- data/spec/fixtures/Recipe/T08_Armor_Helm.rcp +0 -0
- data/spec/fixtures/Recipe/T08_Armor_Pants.rcp +0 -0
- data/spec/fixtures/Recipe/T08_Armor_Shield.rcp +0 -0
- data/spec/fixtures/Recipe/T08_Armor_Shoulders.rcp +0 -0
- data/spec/fixtures/Recipe/T08_Armor_SpiritStone.rcp +0 -0
- data/spec/fixtures/Recipe/T08_Armor_VoodooMask.rcp +0 -0
- data/spec/fixtures/Recipe/T08_Armor_WizardHat.rcp +0 -0
- data/spec/fixtures/Recipe/T08_Legendary_Armor_Boots.rcp +0 -0
- data/spec/fixtures/Recipe/T08_Legendary_Set_Hell_002_Belt.rcp +0 -0
- data/spec/fixtures/Recipe/T08_Legendary_Set_Hell_002_Bracers.rcp +0 -0
- data/spec/fixtures/Recipe/T08_Legendary_Set_Hell_002_Helm.rcp +0 -0
- data/spec/fixtures/Recipe/T08_Legendary_Weapon_Crossbow.rcp +0 -0
- data/spec/fixtures/Recipe/T08_Weapon_Axe_2H.rcp +0 -0
- data/spec/fixtures/Recipe/T08_Weapon_Crossbow.rcp +0 -0
- data/spec/fixtures/Recipe/T08_Weapon_Dagger.rcp +0 -0
- data/spec/fixtures/Recipe/T08_Weapon_Fist.rcp +0 -0
- data/spec/fixtures/Recipe/T08_Weapon_HandCrossbow.rcp +0 -0
- data/spec/fixtures/Recipe/T08_Weapon_Mace_1H.rcp +0 -0
- data/spec/fixtures/Recipe/T08_Weapon_MightyWeapon_2H.rcp +0 -0
- data/spec/fixtures/Recipe/T08_Weapon_Mojo.rcp +0 -0
- data/spec/fixtures/Recipe/T08_Weapon_Sword_1H.rcp +0 -0
- data/spec/fixtures/Recipe/T09_Armor_Belt.rcp +0 -0
- data/spec/fixtures/Recipe/T09_Armor_Boots.rcp +0 -0
- data/spec/fixtures/Recipe/T09_Armor_Bracers.rcp +0 -0
- data/spec/fixtures/Recipe/T09_Armor_Chest.rcp +0 -0
- data/spec/fixtures/Recipe/T09_Armor_Gloves.rcp +0 -0
- data/spec/fixtures/Recipe/T09_Armor_Helm.rcp +0 -0
- data/spec/fixtures/Recipe/T09_Armor_Pants.rcp +0 -0
- data/spec/fixtures/Recipe/T09_Armor_Shield.rcp +0 -0
- data/spec/fixtures/Recipe/T09_Armor_Shoulders.rcp +0 -0
- data/spec/fixtures/Recipe/T09_Weapon_Axe_1H.rcp +0 -0
- data/spec/fixtures/Recipe/T09_Weapon_Bow.rcp +0 -0
- data/spec/fixtures/Recipe/T09_Weapon_CeremonialKnife.rcp +0 -0
- data/spec/fixtures/Recipe/T09_Weapon_CombatStaff.rcp +0 -0
- data/spec/fixtures/Recipe/T09_Weapon_Mace_2H.rcp +0 -0
- data/spec/fixtures/Recipe/T09_Weapon_MightyWeapon_1H.rcp +0 -0
- data/spec/fixtures/Recipe/T09_Weapon_Orb.rcp +0 -0
- data/spec/fixtures/Recipe/T09_Weapon_Quiver.rcp +0 -0
- data/spec/fixtures/Recipe/T09_Weapon_Staff.rcp +0 -0
- data/spec/fixtures/Recipe/T09_Weapon_Wand.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Armor_Belt_04.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Armor_Belt_05.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Armor_Belt_06.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Armor_Boots_04.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Armor_Boots_05.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Armor_Boots_06.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Armor_Bracers_04.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Armor_Bracers_05.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Armor_Bracers_06.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Armor_ChampionsBelt_06.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Armor_Chest_04.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Armor_Chest_05.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Armor_Chest_06.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Armor_Cloak_06.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Armor_Gloves_04.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Armor_Gloves_05.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Armor_Gloves_06.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Armor_Helm_04.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Armor_Helm_05.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Armor_Helm_06.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Armor_Pants_04.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Armor_Pants_05.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Armor_Pants_06.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Armor_Shield_04.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Armor_Shield_05.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Armor_Shield_06.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Armor_Shoulders_04.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Armor_Shoulders_05.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Armor_Shoulders_06.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Armor_SpiritStone_06.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Armor_VoodooMask_06.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Armor_WizardHat_06.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Legendary_Armor_Bracers.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Legendary_Armor_Chest.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Legendary_Armor_Helm.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Legendary_Armor_Pants.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Legendary_Armor_Shoulders.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Legendary_Set_Inferno_001_Belt.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Legendary_Set_Inferno_001_Bracers.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Legendary_Set_Inferno_001_Chest.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Legendary_Set_Inferno_001_Pants.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Legendary_Set_Inferno_001_Shoulders.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Legendary_Set_Inferno_002_Boots.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Legendary_Set_Inferno_002_Gloves.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Legendary_Set_Inferno_002_Helm.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Legendary_Set_Inferno_003_Axe_1H.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Legendary_Set_Inferno_003_CeremonialKnife.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Legendary_Set_Inferno_003_Fist.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Legendary_Set_Inferno_003_HandCrossbow.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Legendary_Set_Inferno_003_MightyWeapon_1H.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Legendary_Set_Inferno_003_Shield.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Legendary_Set_Inferno_003_Wand.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Legendary_Weapon_Axe_2H.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Legendary_Weapon_Bow.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Legendary_Weapon_CombatStaff.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Legendary_Weapon_Dagger.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Legendary_Weapon_Mace_1H.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Legendary_Weapon_Quiver.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Legendary_Weapon_Sword_1H.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Legendary_Weapon_Wand.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Axe_1H_04.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Axe_1H_05.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Axe_1H_06.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Axe_2H_04.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Axe_2H_05.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Axe_2H_06.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Bow_04.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Bow_05.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Bow_06.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_CeremonialKnife_04.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_CeremonialKnife_05.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_CeremonialKnife_06.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_CombatStaff_04.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_CombatStaff_05.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_CombatStaff_06.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Crossbow_04.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Crossbow_05.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Crossbow_06.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Dagger_04.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Dagger_05.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Dagger_06.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Fist_04.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Fist_05.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Fist_06.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_HandCrossbow_04.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_HandCrossbow_05.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_HandCrossbow_06.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Mace_1H_04.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Mace_1H_05.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Mace_1H_06.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Mace_2H_04.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Mace_2H_05.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Mace_2H_06.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_MightyWeapon_1H_04.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_MightyWeapon_1H_05.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_MightyWeapon_1H_06.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_MightyWeapon_2H_04.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_MightyWeapon_2H_05.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_MightyWeapon_2H_06.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Mojo_04.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Mojo_05.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Mojo_06.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Orb_04.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Orb_05.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Orb_06.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Quiver_04.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Quiver_05.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Quiver_06.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Staff_04.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Staff_05.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Staff_06.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Sword_1H_04.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Sword_1H_05.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Sword_1H_06.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Sword_2H_04.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Sword_2H_05.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Sword_2H_06.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Wand_04.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Wand_05.rcp +0 -0
- data/spec/fixtures/Recipe/T10_Weapon_Wand_06.rcp +0 -0
- data/spec/integration/actor_spec.rb +15 -36
- data/spec/integration/recipe_spec.rb +36 -0
- data/spec/integration/string_list_spec.rb +26 -18
- data/spec/unit/core_data/game_balance/recipes_spec.rb +14 -0
- data/spec/unit/csv_generator/csv_generator_spec.rb +5 -5
- data/spec/unit/csv_generator/item_enhancements_spec.rb +11 -0
- data/spec/unit/csv_generator/item_spec.rb +1 -1
- data/spec/unit/csv_generator/recipe_details_spec.rb +12 -0
- data/spec/unit/csv_generator/recipes_spec.rb +17 -0
- data/spec/unit/csv_generator/string_list_spec.rb +12 -0
- data/spec/unit/recipe_spec.rb +13 -0
- metadata +928 -13
data/lib/bindata_ext/mod_code.rb
CHANGED
@@ -108,7 +108,8 @@ class ModCode < BinData::Record
|
|
108
108
|
when 0x00
|
109
109
|
# return the value at the top of the stack
|
110
110
|
raise "Return found, but Stack not empty!" if @data[index+1]
|
111
|
-
|
111
|
+
@value = pop
|
112
|
+
return @value
|
112
113
|
when 0x01
|
113
114
|
# call the function of the next op-code (just pass here)
|
114
115
|
when 0x03
|
@@ -150,7 +151,7 @@ class ModCode < BinData::Record
|
|
150
151
|
|
151
152
|
formula, min, max = blk.call(a, b)
|
152
153
|
|
153
|
-
push(StackValue.random(min,
|
154
|
+
push(StackValue.random(min, max || min))
|
154
155
|
@trace << formula
|
155
156
|
end
|
156
157
|
|
data/lib/d3_mpq/analyzer.rb
CHANGED
@@ -18,6 +18,8 @@ module D3MPQ
|
|
18
18
|
case parser_name
|
19
19
|
when "d3mpq_stringlist"
|
20
20
|
write_stringlist
|
21
|
+
when "d3mpq_recipe"
|
22
|
+
write_recipe
|
21
23
|
when "d3mpq_attributes"
|
22
24
|
write_single_file("analyze")
|
23
25
|
when "d3mpq_coredata_actor"
|
@@ -33,6 +35,13 @@ module D3MPQ
|
|
33
35
|
write_single_file(dir, @files.first.split("/").last)
|
34
36
|
end
|
35
37
|
|
38
|
+
# Writing if StringList
|
39
|
+
def write_recipe
|
40
|
+
@field = nil
|
41
|
+
dir = File.join("analyze", "Recipe")
|
42
|
+
write_single_file(dir, @files.first.split("/").last)
|
43
|
+
end
|
44
|
+
|
36
45
|
# Writing if GameBalance
|
37
46
|
def write_game_balance
|
38
47
|
write_single_file("analyze")
|
data/lib/d3_mpq/commands.rb
CHANGED
@@ -9,14 +9,23 @@ module D3MPQ::CoreData::GameBalance
|
|
9
9
|
:read_length => 0x100,
|
10
10
|
:trim_padding => true
|
11
11
|
|
12
|
-
|
12
|
+
uint32 :source
|
13
|
+
uint32 :level
|
14
|
+
uint32 :gold_cost
|
15
|
+
uint32 :slot
|
13
16
|
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
+
zeroes
|
18
|
+
|
19
|
+
mod_codes :mod_codes, :initial_length => 16
|
20
|
+
|
21
|
+
uint32 :num_mats
|
22
|
+
|
23
|
+
3.times do |i|
|
24
|
+
uint32 "mats#{i}_hash"
|
25
|
+
uint32 "mats#{i}_num"
|
17
26
|
end
|
18
27
|
|
19
|
-
|
28
|
+
zeroes
|
20
29
|
end
|
21
30
|
end
|
22
31
|
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
module D3MPQ::CoreData::GameBalance
|
2
|
+
class Recipes < Base
|
3
|
+
self.struct_size = 0x14C
|
4
|
+
|
5
|
+
content do
|
6
|
+
zeroes
|
7
|
+
string :name, :length => 0x100, :trim_padding => true
|
8
|
+
|
9
|
+
uint32 :rcp_id # MPQ Id of the corresponding *.rcp file
|
10
|
+
uint32 :type # recipe type: 0=BS, 1=Jeweler, 2=Mystic
|
11
|
+
uint32 :source # recipe source: 0=Auto, 1=Plan
|
12
|
+
uint32 :unkown
|
13
|
+
uint32 :gold_cost # crafting gold cost
|
14
|
+
uint32 :level_internal # crafting level required (internal)
|
15
|
+
|
16
|
+
6.times do |i|
|
17
|
+
uint32 "mats#{i}_hash"
|
18
|
+
uint32 "mats#{i}_num"
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
@@ -16,6 +16,7 @@ module D3MPQ::CoreData
|
|
16
16
|
require "d3_mpq/core_data/game_balance/monster_affixes"
|
17
17
|
require "d3_mpq/core_data/game_balance/monster_names"
|
18
18
|
require "d3_mpq/core_data/game_balance/power_formula_tables"
|
19
|
+
require "d3_mpq/core_data/game_balance/recipes"
|
19
20
|
require "d3_mpq/core_data/game_balance/set_item_bonuses"
|
20
21
|
require "d3_mpq/core_data/game_balance/socketed_effects"
|
21
22
|
end
|
@@ -10,7 +10,7 @@ module D3MPQ::CSVGenerator
|
|
10
10
|
:param1 => :param1,
|
11
11
|
:param2 => :param2,
|
12
12
|
:rare_prefix_fileid => :rare_name_prefix_id,
|
13
|
-
:
|
13
|
+
:rare_suffix_fileid => :rare_name_suffix_id,
|
14
14
|
:parent_hash => :group_hash,
|
15
15
|
:parent_hash2 => :group_hash2,
|
16
16
|
:class_id => :class_id,
|
@@ -0,0 +1,34 @@
|
|
1
|
+
module D3MPQ::CSVGenerator
|
2
|
+
class ItemEnhancements < Base
|
3
|
+
MPQ_READER = D3MPQ::CoreData::GameBalance::ItemEnhancements
|
4
|
+
|
5
|
+
map = {
|
6
|
+
:name => :name,
|
7
|
+
:hash => Proc.new { |subject| subject.name.to_d3_hash },
|
8
|
+
:source => :source,
|
9
|
+
:level => :level,
|
10
|
+
:gold_cost => :gold_cost,
|
11
|
+
:slot => :slot,
|
12
|
+
:num_mats => :num_mats
|
13
|
+
}
|
14
|
+
|
15
|
+
16.times do |i|
|
16
|
+
m = "modcode#{i}"
|
17
|
+
map["#{m}_mod_id".intern] = Proc.new { |subject| subject.mod_codes[i].mod_code }
|
18
|
+
map["#{m}_param1".intern] = Proc.new { |subject| subject.mod_codes[i].mod_param1 }
|
19
|
+
map["#{m}_param2".intern] = Proc.new { |subject| subject.mod_codes[i].mod_param2 }
|
20
|
+
map["#{m}_param3".intern] = Proc.new { |subject| subject.mod_codes[i].mod_param3 }
|
21
|
+
map["#{m}_opcode".intern] = Proc.new { |subject| subject.mod_codes[i].trace.join("|") }
|
22
|
+
map["#{m}_value_min".intern] = Proc.new { |subject| subject.mod_codes[i].min }
|
23
|
+
map["#{m}_value_max".intern] = Proc.new { |subject| subject.mod_codes[i].max }
|
24
|
+
end
|
25
|
+
|
26
|
+
3.times do |i|
|
27
|
+
map["mats#{i}_hash".intern] = "mats#{i}_hash".intern
|
28
|
+
map["mats#{i}_num".intern] = "mats#{i}_num".intern
|
29
|
+
end
|
30
|
+
|
31
|
+
map_to_csv(map)
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
@@ -0,0 +1,23 @@
|
|
1
|
+
module D3MPQ::CSVGenerator
|
2
|
+
class RecipeDetails < Base
|
3
|
+
MPQ_READER = D3MPQ::Recipe
|
4
|
+
|
5
|
+
map_to_csv :mpq_id => :mpq_id,
|
6
|
+
:filename => Proc.new { |subject, filename| filename.split("/").last.gsub(".rcp", '') },
|
7
|
+
:base_type_hash => :base_type_hash,
|
8
|
+
:num_fixed_affixes => :num_fixed_affixes,
|
9
|
+
:affix_hash_1 => :affix_hash_1,
|
10
|
+
:affix_hash_2 => :affix_hash_2,
|
11
|
+
:affix_hash_3 => :affix_hash_3,
|
12
|
+
:num_rand_affixes => :num_rand_affixes,
|
13
|
+
:unknown => :unknown
|
14
|
+
|
15
|
+
# HACK: to map a MPQ that do not respond_to :content
|
16
|
+
def base_to_subjects(base, filename)
|
17
|
+
print "."
|
18
|
+
@lines << subject_to_csv_line(base, filename)
|
19
|
+
end
|
20
|
+
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
@@ -0,0 +1,24 @@
|
|
1
|
+
module D3MPQ::CSVGenerator
|
2
|
+
class Recipes < Base
|
3
|
+
MPQ_READER = D3MPQ::CoreData::GameBalance::Recipes
|
4
|
+
|
5
|
+
map = {
|
6
|
+
:name => :name,
|
7
|
+
:hash => Proc.new { |subject| subject.name.to_d3_hash },
|
8
|
+
:rcp_id => :rcp_id,
|
9
|
+
:type => :type,
|
10
|
+
:source => :source,
|
11
|
+
:gold_cost => :gold_cost,
|
12
|
+
:level_internal => :level_internal,
|
13
|
+
:num_mats => :unkown
|
14
|
+
}
|
15
|
+
|
16
|
+
6.times do |i|
|
17
|
+
map["mats#{i}_hash".intern] = "mats#{i}_hash".intern
|
18
|
+
map["mats#{i}_num".intern] = "mats#{i}_num".intern
|
19
|
+
end
|
20
|
+
|
21
|
+
map_to_csv(map)
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
data/lib/d3_mpq/csv_generator.rb
CHANGED
@@ -4,8 +4,11 @@ module D3MPQ
|
|
4
4
|
|
5
5
|
require 'd3_mpq/csv_generator/actor'
|
6
6
|
require 'd3_mpq/csv_generator/affix_list'
|
7
|
-
require 'd3_mpq/csv_generator/
|
7
|
+
require 'd3_mpq/csv_generator/item_enhancements'
|
8
8
|
require 'd3_mpq/csv_generator/items'
|
9
|
+
require 'd3_mpq/csv_generator/item_types'
|
10
|
+
require 'd3_mpq/csv_generator/recipe_details'
|
11
|
+
require 'd3_mpq/csv_generator/recipes'
|
9
12
|
require 'd3_mpq/csv_generator/string_list'
|
10
13
|
end
|
11
14
|
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
module D3MPQ
|
2
|
+
class Recipe < MPQ
|
3
|
+
uint32 :mpq_id
|
4
|
+
|
5
|
+
zeroes :length => 2
|
6
|
+
|
7
|
+
uint32 :base_type_hash # hash of the item's base type
|
8
|
+
uint32 :num_fixed_affixes # number of fixed affixes
|
9
|
+
uint32 :affix_hash_1 # affix hash 1
|
10
|
+
uint32 :affix_hash_2 # affix hash 2
|
11
|
+
uint32 :affix_hash_3 # affix hash 3
|
12
|
+
uint32 :num_rand_affixes # number of random affixes
|
13
|
+
uint32 :unknown
|
14
|
+
|
15
|
+
hide :rest
|
16
|
+
rest :rest
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
data/lib/d3_mpq/version.rb
CHANGED
data/lib/d3_mpq/version.rb~
CHANGED
data/lib/d3_mpq.rb
CHANGED
Binary file
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
File without changes
|
Binary file
|
Binary file
|
Binary file
|
File without changes
|
Binary file
|
File without changes
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
File without changes
|
File without changes
|
File without changes
|
Binary file
|
File without changes
|
File without changes
|
Binary file
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
Binary file
|
Binary file
|
Binary file
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
Binary file
|
File without changes
|
File without changes
|
Binary file
|
File without changes
|
File without changes
|
File without changes
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|