d2modgen icon indicating copy to clipboard operation
d2modgen copied to clipboard

"Prevent duplicate properties on items" doesn't work for set items

Open SegFaultGitHub opened this issue 4 months ago • 1 comments

Everything is in the title. Set items have duplicate properties even with the option "Prevent duplicate properties on items" enabled

Example:

Config:

{
    "challenge": null,
    "challenge_enabled": false,
    "character": {
        "idTome": true
    },
    "character_enabled": true,
    "cube": {
        "craftNoRunes": true,
        "craftNoStrict": true,
        "noGemUpgrade": true,
        "quickPortals": true,
        "runeDowngrade": true,
        "socketing": true,
        "upgrading": true
    },
    "cube_enabled": true,
    "density": {
        "density": 7,
        "mon_groups": 2,
        "packs": 3
    },
    "density_enabled": true,
    "drop_filter": {
        "compact_pots": true,
        "compact_scrolls": true,
        "hide_ammo": true,
        "hide_hps": true,
        "hide_junks": true,
        "hide_lowq": true,
        "hide_mps": true,
        "hide_stam": true,
        "hide_tsc": true
    },
    "drop_filter_enabled": true,
    "gambling": {
        "ratioSet": 250,
        "ratioUnique": 500
    },
    "gambling_enabled": true,
    "item_drops": {
        "boss_quest_drops": true,
        "chance_set": 30,
        "chance_uni": 50,
        "equip_percent": 1000,
        "gold_percent": 5,
        "good_percent": 1000,
        "high_elite_drops": true,
        "junk_percent": 5,
        "nodrop_percent": 5
    },
    "item_drops_enabled": true,
    "main": {
        "d2legacyPath": "",
        "d2rPath": "C:\\Program Files (x86)\\Diablo II Resurrected",
        "exportAllTables": false,
        "isLegacy": false,
        "modname": "rando",
        "outPath": "",
        "seed": 1
    },
    "mergePostgen": null,
    "mergePostgen_enabled": false,
    "mergePregen": null,
    "mergePregen_enabled": false,
    "monRandomizer": null,
    "monRandomizer_enabled": false,
    "monster_stats": {
        "mon_ar": 200,
        "mon_dam": 200,
        "mon_def": 200,
        "mon_hp": 200,
        "mon_xp": 200
    },
    "monster_stats_enabled": false,
    "perfect_rolls": null,
    "perfect_rolls_enabled": false,
    "qol": {
        "disableExpPenalty": false,
        "keySize": true,
        "quiverSize": true,
        "tomeSize": true,
        "uniqueCharmLimit": true,
        "weakenTownSkills": true,
        "weakenTownSkillsExt": true
    },
    "qol_enabled": true,
    "randomizer": {
        "affixRandom": false,
        "crazyLevel": 100,
        "itemFitPercent": 0,
        "keepOriginalPercent": 0,
        "relativeCountMin": 1000,
        "repeat_sets": 1,
        "repeat_uniques": 1,
        "replaceCharges": true,
        "replaceSkills": true,
        "setRelativeCountMin": 1000
    },
    "randomizer_enabled": true,
    "requirements": null,
    "requirements_enabled": false,
    "rune_drops": null,
    "rune_drops_enabled": false,
    "skillRandomizer": null,
    "skillRandomizer_enabled": false,
    "testConfig": null,
    "testConfig_enabled": true
}

Duplicate properties on the following items:

{
  "Civerb's Ward": [
    "oskill"
  ],
  "Civerb's Icon": [
    "res-fire",
    "res-pois"
  ],
  "Civerb's Cudgel": [
    "att",
    "att",
    "oskill"
  ],
  "Hsarus' Iron Heel": [
    "oskill"
  ],
  "Cleglaw's Tooth": [
    "dmg%",
    "str",
    "res-fire",
    "lifesteal"
  ],
  "Cleglaw's Claw": [
    "ac",
    "hp"
  ],
  "Cleglaw's Pincers": [
    "enr",
    "dmg%"
  ],
  "Iratha's Collar": [
    "res-all"
  ],
  "Iratha's Cuff": [
    "oskill",
    "light"
  ],
  "Iratha's Coil": [
    "oskill"
  ],
  "Iratha's Cord": [
    "dmg%",
    "dmg%",
    "oskill"
  ],
  "Isenhart's Lightbrand": [
    "fire-min",
    "fire-max"
  ],
  "Isenhart's Parry": [
    "oskill",
    "dex"
  ],
  "Isenhart's Case": [
    "att",
    "ac"
  ],
  "Isenhart's Horns": [
    "dmg%",
    "swing2"
  ],
  "Vidala's Barb": [
    "sor",
    "dmg%",
    "vit",
    "dmg-demon"
  ],
  "Vidala's Fetlock": [
    "dmg%"
  ],
  "Vidala's Ambush": [
    "ac%",
    "regen"
  ],
  "Vidala's Snare": [
    "mana",
    "hp"
  ],
  "Milabrega's Orb": [
    "manasteal",
    "oskill"
  ],
  "Milabrega's Rod": [
    "oskill",
    "str"
  ],
  "Milabrega's Diadem": [
    "dmg%",
    "dmg-max",
    "mana",
    "mag%"
  ],
  "Milabrega's Robe": [
    "ac"
  ],
  "Cathan's Rule": [
    "mana",
    "oskill"
  ],
  "Cathan's Visage": [
    "oskill"
  ],
  "Cathan's Sigil": [
    "str"
  ],
  "Cathan's Seal": [
    "dmg%"
  ],
  "Tancred's Spine": [
    "res-fire",
    "cast3"
  ],
  "Tancred's Hobnails": [
    "oskill",
    "manasteal"
  ],
  "Tancred's Weird": [
    "dmg-cold",
    "att",
    "dmg-ltng",
    "red-dmg"
  ],
  "Tancred's Skull": [
    "aura"
  ],
  "Sigon's Gage": [
    "dmg%",
    "ease"
  ],
  "Sigon's Visor": [
    "ac",
    "dmg%",
    "thorns"
  ],
  "Sigon's Shelter": [
    "dmg-ltng"
  ],
  "Sigon's Sabot": [
    "light"
  ],
  "Sigon's Wrap": [
    "res-ltng",
    "dmg%",
    "res-ltng",
    "dmg%"
  ],
  "Sigon's Guard": [
    "ac%",
    "dmg%"
  ],
  "Infernal Cranium": [
    "ac"
  ],
  "Infernal Torch": [
    "skilltab"
  ],
  "Infernal Sign": [
    "mana"
  ],
  "Berserker's Headgear": [
    "allskills"
  ],
  "Berserker's Hauberk": [
    "lifesteal"
  ],
  "Berserker's Hatchet": [
    "enr",
    "oskill"
  ],
  "Death's Guard": [
    "dex"
  ],
  "Death's Touch": [
    "att"
  ],
  "Angelic Sickle": [
    "dmg%",
    "dex"
  ],
  "Angelic Mantle": [
    "mana",
    "swing2",
    "oskill"
  ],
  "Angelic Wings": [
    "mana%",
    "ac%",
    "dmg-max"
  ],
  "Arctic Horn": [
    "ac",
    "dmg%"
  ],
  "Arctic Binding": [
    "dmg%",
    "res-all"
  ],
  "Arctic Mitts": [
    "str"
  ],
  "Arcanna's Sign": [
    "swing2"
  ],
  "Arcanna's Deathwand": [
    "oskill",
    "oskill"
  ],
  "Arcanna's Head": [
    "oskill",
    "dmg-cold"
  ],
  "Arcanna's Flesh": [
    "res-all",
    "res-cold",
    "res-cold"
  ],
  "Natalya's Totem": [
    "ac%",
    "move2",
    "str",
    "dmg%"
  ],
  "Natalya's Mark": [
    "str"
  ],
  "Natalya's Shadow": [
    "manasteal"
  ],
  "Natalya's Soul": [
    "ac-miss"
  ],
  "Aldur's Deception": [
    "dmg%",
    "oskill"
  ],
  "Aldur's Gauntlet": [
    "ac",
    "att",
    "skilltab"
  ],
  "Aldur's Advance": [
    "str",
    "res-all"
  ],
  "Immortal King's Will": [
    "att",
    "att%"
  ],
  "Immortal King's Detail": [
    "dmg-ltng",
    "mana-kill",
    "dex"
  ],
  "Immortal King's Forge": [
    "enr"
  ],
  "Immortal King's Stone Crusher": [
    "ac",
    "res-fire"
  ],
  "Tal Rasha's Fire-Spun Cloth": [
    "oskill"
  ],
  "Tal Rasha's Adjudication": [
    "res-fire",
    "ac"
  ],
  "Tal Rasha's Lidless Eye": [
    "att"
  ],
  "Tal Rasha's Howling Wind": [
    "lifesteal",
    "skilltab"
  ],
  "Tal Rasha's Horadric Crest": [
    "dmg-norm",
    "sor",
    "ac%"
  ],
  "Griswold's Valor": [
    "red-dmg",
    "mana-kill",
    "dmg%"
  ],
  "Griswold's Heart": [
    "skilltab",
    "ac"
  ],
  "Griswolds's Redemption": [
    "str",
    "enr",
    "oskill"
  ],
  "Griswold's Honor": [
    "hit-skill",
    "mana"
  ],
  "Trang-Oul's Guise": [
    "hit-skill",
    "dmg%"
  ],
  "Trang-Oul's Scales": [
    "res-fire"
  ],
  "Trang-Oul's Wing": [
    "str"
  ],
  "Trang-Oul's Claws": [
    "gethit-skill",
    "oskill"
  ],
  "Trang-Oul's Girth": [
    "ac%"
  ],
  "M'avina's True Sight": [
    "oskill",
    "dmg%",
    "str",
    "ac%",
    "dmg%"
  ],
  "M'avina's Embrace": [
    "res-all",
    "nec",
    "dmg%",
    "dex",
    "res-all"
  ],
  "M'avina's Icy Clutch": [
    "ama",
    "att"
  ],
  "M'avina's Caster": [
    "hp",
    "res-cold",
    "oskill"
  ],
  "Laying of Hands": [
    "dmg%",
    "deadly"
  ],
  "Rite of Passage": [
    "att",
    "dmg-min"
  ],
  "Spiritual Custodian": [
    "ltng-min",
    "ltng-max"
  ],
  "Credendum": [
    "att"
  ],
  "Heaven's Taebaek": [
    "oskill",
    "ac%"
  ],
  "Haemosu's Adament": [
    "reduce-ac",
    "ac%",
    "mana",
    "thorns"
  ],
  "Guillaume's Face": [
    "dex",
    "light",
    "res-all",
    "gethit-skill",
    "oskill"
  ],
  "Magnus' Skin": [
    "mag%",
    "str"
  ],
  "Wihtstan's Guard": [
    "dmg-pois"
  ],
  "Hwanin's Splendor": [
    "dmg%",
    "str",
    "skilltab"
  ],
  "Hwanin's Refuge": [
    "att",
    "swing1"
  ],
  "Hwanin's Seal": [
    "allskills",
    "ac"
  ],
  "Hwanin's Justice": [
    "str"
  ],
  "Sazabi's Cobalt Redeemer": [
    "ac%",
    "dmg%"
  ],
  "Sazabi's Ghost Liberator": [
    "res-fire",
    "res-pois"
  ],
  "Sazabi's Mental Sheath": [
    "oskill",
    "regen-mana"
  ],
  "Bul-Kathos' Sacred Charge": [
    "dex"
  ],
  "Bul-Kathos' Tribal Guardian": [
    "skilltab",
    "manasteal"
  ],
  "Cow King's Hoofs": [
    "att",
    "ac%"
  ],
  "Naj's Light Plate": [
    "balance2",
    "dex",
    "att"
  ],
  "Naj's Circlet": [
    "light",
    "str",
    "swing2",
    "dmg%",
    "hit-skill"
  ],
  "McAuley's Paragon": [
    "pal"
  ],
  "McAuley's Riprap": [
    "stam",
    "skilltab"
  ],
  "McAuley's Taboo": [
    "res-fire-max",
    "slow",
    "att",
    "ac",
    "att"
  ],
  "McAuley's Superstition": [
    "balance2",
    "dex",
    "dmg-demon",
    "res-ltng"
  ]
}

SegFaultGitHub avatar Aug 31 '25 15:08 SegFaultGitHub