IJ2 Gear Randomization - thethiny/NRS-Asset-Manager GitHub Wiki

IJ2 Gear Randomization

Static vs Randomized

Static (defined in data files)

  • Visual mesh/appearance (ITEMDEFINITIONSAUX.xxx)
  • Character + slot assignment (CAPDEFINITIONS_ScriptAssets.xxx)
  • Gear piece name (Coalesced.ENG)
  • Set membership (mAssetGroup in ITEMDEFINITIONSAUX)
  • Visual rarity score (DCF2GEARRARITYTABLE.xxx)
  • Color palette/shader (CAPMaterialAsset + CPT textures)

Randomized (per drop at runtime)

  • Gear level (1-30, based on character level)
  • Rarity tier (weighted by Mother Box tier)
  • Stat values (4 stats: STR, ABL, DEF, HP)
  • Which visual drops (weighted by mVisualRarity)
  • Augment slots (0-3)

Visual Rarity Encoding

mVisualRarity = epic_layers * 1,000,000 + rare_layers * 10,000 + common_layers * 100 + position_weight

Example: 1020005 = 1 epic layer + 2 common layers + weight 5

What Can Be Extracted

From our extracted data:

  • Complete gear catalog (24,982 items)
  • Visual rarity breakdown per piece
  • Set encyclopedia (~205 sets)
  • Shader gallery (~814 shaders)
  • Ability list (~735 abilities)
  • Augment types and effects
  • Character accessory names

What requires binary extraction or empirical data:

  • Min/max stat values per level per rarity
  • Drop rate percentages per Mother Box tier
  • Budget allocation algorithm