irswat Posted January 13, 2017 Share Posted January 13, 2017 I am currently pondering how to make my voice command engine compatible with mods in an easy way. In order for the VCE to support 3rd party mods the VCE needs lists of category arrays for the various items. For example:[Mod Name][Command Type: Equip][Form Type: Weapons][Category Array: Unique Identifiers].........[Category Array: Element Types].........[Command Type: Cast][Form Type: Spells].........[end]here is an example of the Vanilla & DLC category arrays [length warning]: Numerator=new string[10]Numerator[0]="one"Numerator[1]="two"Numerator[2]="three"Numerator[3]="four"Numerator[4]="five"Numerator[5]="six"Numerator[6]="seven"Numerator[7]="eight"Numerator[8]="nine"Numerator[9]="ten" CommandList=new string[20]CommandList[0]="Thuum"CommandList[1]="Equip" ;add support for arrows & spellsCommandList[2]="Unequip"Commandlist[3]="Use" ;add eat/drink, support for arrows, poisonsCommandList[4]="Cast"CommandList[5]="Map"CommandList[6]="Save"CommandList[7]="Exit"CommandList[8]="Sheath"CommandList[9]="Run"CommandList[10]="Quit";***********************************************ShoutNames=new string[128] ;skipping 0 on purposeShoutNames[0]="Voice of the Emperor" ;place holder for nowShoutNames[1]="Animal Allegiance"ShoutNames[2]="Aura Whisper"ShoutNames[3]="Battle Fury"ShoutNames[4]="Become Ethereal"ShoutNames[5]="Bend Will"ShoutNames[6]="Call Dragon"ShoutNames[7]="Call of Valor"ShoutNames[8]="Clear Skies"ShoutNames[9]="Cyclone"ShoutNames[10]="Disarm"ShoutNames[11]="Dismay"ShoutNames[12]="Dragon Aspect"ShoutNames[13]="Dragonrend Joor"ShoutNames[14]="Drain Vitality"ShoutNames[15]="Elemental Fury"ShoutNames[16]="Fire Breath"ShoutNames[17]="Frost Breath"ShoutNames[18]="Ice Form"ShoutNames[19]="Kyne's Peace"ShoutNames[20]="Marked for Death"ShoutNames[21]="Slow Time"ShoutNames[22]="Soul Tear"ShoutNames[23]="Storm Call"ShoutNames[24]="Summon Durnehviir"ShoutNames[25]="Throw Voice"ShoutNames[26]="Unrelenting Force"ShoutNames[27]="Whirlwind Sprint";***********************************************ShoutWords=new string[128] ;skipping 0 on purposeShoutWords[1]="Raan"ShoutWords[2]="Mir"ShoutWords[3]="Tah"ShoutWords[4]="Laas" ShoutWords[5]="Yah"ShoutWords[6]="Nir"ShoutWords[7]="Mid"ShoutWords[8]="Vur"ShoutWords[9]="Shaan"ShoutWords[10]="Feim"ShoutWords[11]="Zii"ShoutWords[12]="Gron"ShoutWords[13]="Gol"ShoutWords[14]="Hah"ShoutWords[15]="Dov"ShoutWords[16]="Od"ShoutWords[17]="Ah"ShoutWords[18]="Viing"ShoutWords[19]="Hun"ShoutWords[20]="Kaal" ShoutWords[21]="Zoor"ShoutWords[22]="Lok"ShoutWords[23]="Vah"ShoutWords[24]="Koor"ShoutWords[25]="Ven"ShoutWords[26]="Gaar" ShoutWords[27]="Nos"ShoutWords[28]="Zun"ShoutWords[29]="Haal"ShoutWords[30]="Viik"ShoutWords[31]="Faas"ShoutWords[32]="Ru"ShoutWords[33]="Maar"ShoutWords[34]="Mul"ShoutWords[35]="Qah"ShoutWords[36]="Diiv"ShoutWords[37]="Joor"ShoutWords[38]="Zah"ShoutWords[39]="Frul"ShoutWords[40]="Gaan"ShoutWords[41]="Lah"ShoutWords[42]="Haas"ShoutWords[43]="Su"ShoutWords[44]="Grah"ShoutWords[45]="Dun"ShoutWords[46]="Yol"ShoutWords[47]="Toor" ShoutWords[48]="Shul"ShoutWords[49]="Fo"ShoutWords[50]="Krah" ShoutWords[51]="Diin"ShoutWords[52]="Liz"ShoutWords[53]="Slen" ShoutWords[54]="Nus"ShoutWords[55]="Kaan" ShoutWords[56]="Drem"ShoutWords[57]="Ov"ShoutWords[58]="Krii" ShoutWords[59]="Lun"ShoutWords[60]="Aus"ShoutWords[61]="Tiid" ShoutWords[62]="Klo"ShoutWords[63]="Ul"ShoutWords[64]="Rii"ShoutWords[65]="Vaaz" ShoutWords[66]="Zol"ShoutWords[67]="Struhn" ShoutWords[68]="Bah"ShoutWords[69]="Qo"ShoutWords[70]="Dur" ShoutWords[71]="Neh"ShoutWords[72]="Viir"ShoutWords[73]="Zul"ShoutWords[74]="Mey"ShoutWords[75]="Gut"ShoutWords[76]="Fus"ShoutWords[77]="Ro"ShoutWords[78]="Dah"ShoutWords[79]="Wuld" ShoutWords[80]="Nah"ShoutWords[81]="Kest";***********************************************MaterialList=new string[20]MaterialList[0]="Iron"MaterialList[1]="Steel"MaterialList[2]="Dwarven"MaterialList[3]="Dragonbone"MaterialList[4]="Ebony"MaterialList[5]="Chitin"MaterialList[6]="Glass"MaterialList[7]="Gold"MaterialList[8]="Silver"MaterialList[9]="Dwemer"MaterialList[10]="Daedric"MaterialList[11]="Imperial"MaterialList[12]="Forworn"MaterialList[13]="Falmer";***********************************************WeaponTypes=new string[20]WeaponTypes[0]="Sword"WeaponTypes[1]="Dagger"WeaponTypes[2]="Bow"WeaponTypes[3]="Staff"WeaponTypes[4]="Greatsword"WeaponTypes[5]="Crossbow"WeaponTypes[6]="Blade"WeaponTypes[7]="Mace"WeaponTypes[8]="Warhammer"WeaponTypes[9]="Battleaxe"WeaponTypes[10]="Axe"WeaponTypes[11]="Hammer";***********************************************ArmorTypes=new string[10]ArmorTypes[0]="Helmet"ArmorTypes[1]="Breastplate"ArmorTypes[2]="Boots"ArmorTypes[3]="Gauntlets"ArmorTypes[4]="Shield"ArmorTypes[5]="Armor"ArmorTypes[6]="Helm";*********************************************** ArmorNames=new string[10]ArmorNames[0]="Hardening";***********************************************WeaponNames=new string[128]WeaponNames[1]="Woe"WeaponNames[2]="Nightingale"WeaponNames[3]="Miraak"WeaponNames[4]="Magnus"WeaponNames[5]="of"WeaponNames[6]="Aegusvabe"WeaponNames[7]="Alessandra's"WeaponNames[8]="Alteration"WeaponNames[9]="Amren's"WeaponNames[10]="Ancient"WeaponNames[11]="Angi's"WeaponNames[12]="Animus"WeaponNames[13]="Annihilating"WeaponNames[14]="Arcing"WeaponNames[15]="Balckbow"WeaponNames[16]="Balgruuf's"WeaponNames[17]="Banishing"WeaponNames[18]="Barvir's"WeaponNames[19]="Binding"WeaponNames[20]="Blackblade"WeaponNames[21]="Blaze"WeaponNames[22]="Blessed"WeaponNames[23]="Blizzards"WeaponNames[24]="Bloodthorn"WeaponNames[25]="Bolar's"WeaponNames[26]="Bound"WeaponNames[27]="Briarheart"WeaponNames[28]="Broken"WeaponNames[29]="Burning"WeaponNames[30]="Ceremonial"WeaponNames[31]="Charming"WeaponNames[32]="Chillrend"WeaponNames[33]="Chills"WeaponNames[34]="Cold"WeaponNames[35]="Conjuration"WeaponNames[36]="Cowardice"WeaponNames[37]="Damnation"WeaponNames[38]="Dawnbreaker"WeaponNames[39]="Debilitation"WeaponNames[40]="Depleting"WeaponNames[41]="Despair"WeaponNames[42]="Destruction"WeaponNames[43]="Devouring"WeaponNames[44]="Diminishing"WeaponNames[45]="Dismay"WeaponNames[46]="Dragon"WeaponNames[47]="Dragonbane"WeaponNames[48]="Drainblood"WeaponNames[49]="Drainheart"WeaponNames[50]="Draining"WeaponNames[51]="Drainspell"WeaponNames[52]="Dravin's"WeaponNames[53]="Dread"WeaponNames[54]="Eduj"WeaponNames[55]="Embers"WeaponNames[56]="End"WeaponNames[57]="Enervating"WeaponNames[58]="Evoking"WeaponNames[59]="Exhaustion"WeaponNames[60]="Expelling"WeaponNames[61]="Eye"WeaponNames[62]="Fatigue"WeaponNames[63]="Fear"WeaponNames[64]="Firiniel's"WeaponNames[65]="Flames"WeaponNames[66]="Freezing"WeaponNames[67]="Froki's"WeaponNames[68]="Frost"WeaponNames[69]="Gadnor's"WeaponNames[70]="Garnering"WeaponNames[71]="Gauldor"WeaponNames[72]="Geis"WeaponNames[73]="Ghorbash's"WeaponNames[74]="Ghostblade"WeaponNames[75]="Gleaning"WeaponNames[76]="Harrowing"WeaponNames[77]="Harvesting"WeaponNames[78]="Hunt"WeaponNames[79]="Hunting"WeaponNames[80]="Ice"WeaponNames[81]="Immobilizing"WeaponNames[82]="Inferno"WeaponNames[83]="Leeching"WeaponNames[84]="Lethargy"WeaponNames[85]="Lightning"WeaponNames[86]="Malediction"WeaponNames[87]="Melka"WeaponNames[88]="Nullifying"WeaponNames[89]="Oathblade"WeaponNames[90]="Petrifying"WeaponNames[91]="Priest"WeaponNames[92]="Reaping"WeaponNames[93]="Reverent"WeaponNames[94]="Sacrifice"WeaponNames[95]="Sanctified"WeaponNames[96]="Sapping"WeaponNames[97]="Scorching"WeaponNames[98]="Shocks"WeaponNames[99]="Siphoning"WeaponNames[100]="Sorcerer"WeaponNames[101]="Soul Snares"WeaponNames[102]="Souls"WeaponNames[103]="Sparks"WeaponNames[104]="Sphere"WeaponNames[105]="Storms"WeaponNames[106]="Subsuming"WeaponNames[107]="Sunning"WeaponNames[108]="Supple"WeaponNames[109]="Terror"WeaponNames[110]="the"WeaponNames[111]="Thunderbolts"WeaponNames[112]="Torpor"WeaponNames[113]="Vampire"WeaponNames[114]="Weariness"WeaponNames[115]="Winnowing"WeaponNames[116]="Winter"WeaponNames[117]="Long" ;***********************************************EquipSlots=new string[3]EquipSlots[0]="Left"EquipSlots[1]="Right"EquipSlots[2]="Both";***********************************************ElementalTypes=new string[128]ElementalTypes[0]="Fire"ElementalTypes[1]="Fireball"ElementalTypes[2]="Firebolt"ElementalTypes[3]="Flame"ElementalTypes[4]="Flames"ElementalTypes[5]="Freeze"ElementalTypes[6]="Frost"ElementalTypes[7]="Frostbite"ElementalTypes[8]="Ice"ElementalTypes[9]="Ignite"ElementalTypes[10]="Incinerate"ElementalTypes[11]="Lightning"ElementalTypes[12]="Poison"ElementalTypes[13]="Shock"ElementalTypes[14]="Shockwave"ElementalTypes[15]="Sparks"ElementalTypes[16]="Storm"ElementalTypes[17]="Elemental"ElementalTypes[18]="Fear"ElementalTypes[19]="Explosion"ElementalTypes[20]="Healing"ElementalTypes[21]="Blizzard"ElementalTypes[22]="Blood"ElementalTypes[23]="Health"ElementalTypes[24]="Acid"ElementalTypes[25]="Soul"ElementalTypes[26]="Ash"ElementalTypes[27]="Death"ElementalTypes[28]="Bleeding"ElementalTypes[29]="Bloody"ElementalTypes[30]="Breath"ElementalTypes[31]="Calm"ElementalTypes[32]="Chill"ElementalTypes[33]="Protection"ElementalTypes[34]="Light"ElementalTypes[35]="Candlelight"ElementalTypes[36]="Flaming"ElementalTypes[37]="Frenzy"ElementalTypes[38]="Fury"ElementalTypes[39]="Hysteria"ElementalTypes[40]="Paralyze"ElementalTypes[41]="Paralysis"ElementalTypes[42]="Mayhem"ElementalTypes[43]="Muffle"ElementalTypes[44]="Silence"ElementalTypes[45]="Silent"ElementalTypes[46]="Necromantric"ElementalTypes[47]="Fog"ElementalTypes[48]="Pacify"ElementalTypes[49]="Dead"ElementalTypes[50]="Slime"ElementalTypes[51]="Sun"ElementalTypes[52]="Telekinesis"ElementalTypes[53]="Thunderbolt"ElementalTypes[54]="Vampire"ElementalTypes[55]="Vampire's"ElementalTypes[56]="Vampiric"ElementalTypes[57]="Vortex"ElementalTypes[58]="Water"ElementalTypes[59]="Whirlwind" ElementalTypes[60]="Writhing" SpellStrengths=new string[10]SpellStrengths[0]="Grand"SpellStrengths[1]="Greater"SpellStrengths[2]="Lesser"SpellStrengths[3]="Mass"SpellStrengths[4]="Super" SpellTypes=new string[50]SpellTypes[0]="Conjure"SpellTypes[1]="Summon"SpellTypes[2]="Wall"SpellTypes[3]="Detect"SpellTypes[4]="Expel"SpellTypes[5]="Flow"SpellTypes[6]="Rune"SpellTypes[7]="Cloak"SpellTypes[8]="Stream"SpellTypes[9]="Thrall"SpellTypes[10]="Fortify"SpellTypes[11]="Absorb"SpellTypes[12]="Drain"SpellTypes[13]="Banish"SpellTypes[14]="Blessing"SpellTypes[15]="Bound"SpellTypes[16]="Command"SpellTypes[17]="Disarm"SpellTypes[18]="Shell"SpellTypes[19]="Spray"SpellTypes[20]="Transform"SpellTypes[21]="Transmogrify"SpellTypes[22]="Plague"SpellTypes[23]="Ritual"SpellTypes[24]="Strike"SpellTypes[25]="Touch"SpellTypes[26]="Circle"SpellTypes[27]="Fling"SpellTypes[28]="Bite"SpellTypes[29]="Spike"SpellTypes[30]="Volley"SpellTypes[31]="Spear"SpellTypes[32]="Shield"SpellTypes[33]="Ward"SpellTypes[34]="Bolt"SpellTypes[35]="Raise"SpellTypes[36]="Reanimate" SpellTypes[37]="Repel"SpellTypes[38]="Spit"SpellTypes[39]="Trap"SpellTypes[40]="Arrow"SpellTypes[41]="Torch" MiscSpellModifiers=new string[10]MiscSpellModifiers[0]="of"MiscSpellModifiers[1]="to"MiscSpellModifiers[2]="for" UniqueSpellModifiers=new string[127]UniqueSpellModifiers[1]="Oppressive";UniqueSpellModifiers[2]=;UniqueSpellModifiers[3]=;UniqueSpellModifiers[4]=;UniqueSpellModifiers[5]=;UniqueSpellModifiers[6]=;UniqueSpellModifiers[7]=;UniqueSpellModifiers[8]=;UniqueSpellModifiers[9]=;UniqueSpellModifiers[10]=;UniqueSpellModifiers[11]=;UniqueSpellModifiers[12]=;UniqueSpellModifiers[13]=;UniqueSpellModifiers[14]=;UniqueSpellModifiers[15]=;UniqueSpellModifiers[16]=;UniqueSpellModifiers[17]=;UniqueSpellModifiers[18]=;UniqueSpellModifiers[19]=;UniqueSpellModifiers[20]=;UniqueSpellModifiers[21]=;UniqueSpellModifiers[22]=;UniqueSpellModifiers[23]=;UniqueSpellModifiers[24]=;UniqueSpellModifiers[25]=;UniqueSpellModifiers[26]=;UniqueSpellModifiers[27]=;UniqueSpellModifiers[28]=;UniqueSpellModifiers[29]=;UniqueSpellModifiers[30]=;UniqueSpellModifiers[31]=;UniqueSpellModifiers[32]=;UniqueSpellModifiers[33]=;UniqueSpellModifiers[34]=;UniqueSpellModifiers[35]=;UniqueSpellModifiers[36]=;UniqueSpellModifiers[37]=;UniqueSpellModifiers[38]=;UniqueSpellModifiers[39]=;UniqueSpellModifiers[40]=;UniqueSpellModifiers[41]=;UniqueSpellModifiers[42]=;UniqueSpellModifiers[43]=;UniqueSpellModifiers[44]=;UniqueSpellModifiers[45]=;UniqueSpellModifiers[46]=;UniqueSpellModifiers[47]=;UniqueSpellModifiers[48]=;UniqueSpellModifiers[49]=;UniqueSpellModifiers[50]=;UniqueSpellModifiers[51]=;UniqueSpellModifiers[52]=;UniqueSpellModifiers[53]=;UniqueSpellModifiers[54]=;UniqueSpellModifiers[55]=;UniqueSpellModifiers[56]=;UniqueSpellModifiers[57]=;UniqueSpellModifiers[58]=;UniqueSpellModifiers[59]=;UniqueSpellModifiers[60]=;UniqueSpellModifiers[61]=;UniqueSpellModifiers[62]=;UniqueSpellModifiers[63]=;UniqueSpellModifiers[64]=;UniqueSpellModifiers[65]=;UniqueSpellModifiers[66]=;UniqueSpellModifiers[67]=;UniqueSpellModifiers[68]=;UniqueSpellModifiers[69]=;UniqueSpellModifiers[70]=;UniqueSpellModifiers[71]=;UniqueSpellModifiers[72]=;UniqueSpellModifiers[73]=;UniqueSpellModifiers[74]=;UniqueSpellModifiers[75]=;UniqueSpellModifiers[76]=;UniqueSpellModifiers[77]=;UniqueSpellModifiers[78]=;UniqueSpellModifiers[79]=;UniqueSpellModifiers[80]=;UniqueSpellModifiers[81]=;UniqueSpellModifiers[82]=;UniqueSpellModifiers[83]=;UniqueSpellModifiers[84]=;UniqueSpellModifiers[85]=;UniqueSpellModifiers[86]=;UniqueSpellModifiers[87]=;UniqueSpellModifiers[88]=;UniqueSpellModifiers[89]=;UniqueSpellModifiers[90]=;UniqueSpellModifiers[91]=;UniqueSpellModifiers[92]=;UniqueSpellModifiers[93]=;UniqueSpellModifiers[94]=;UniqueSpellModifiers[95]=;UniqueSpellModifiers[96]=;UniqueSpellModifiers[97]=;UniqueSpellModifiers[98]=;UniqueSpellModifiers[99]=;UniqueSpellModifiers[100]=;UniqueSpellModifiers[101]=;UniqueSpellModifiers[102]=;UniqueSpellModifiers[103]=;UniqueSpellModifiers[104]=;UniqueSpellModifiers[105]=;UniqueSpellModifiers[106]=;UniqueSpellModifiers[107]=;UniqueSpellModifiers[108]=;UniqueSpellModifiers[109]=;UniqueSpellModifiers[110]=;UniqueSpellModifiers[111]=;UniqueSpellModifiers[112]=;UniqueSpellModifiers[113]=;UniqueSpellModifiers[114]=;UniqueSpellModifiers[115]=;UniqueSpellModifiers[116]=;UniqueSpellModifiers[117]= ConjureTypes=new string[40]ConjureTypes[0]="Daedra"ConjureTypes[1]="Ancients"ConjureTypes[2]="Unbound"ConjureTypes[3]="Guardian"ConjureTypes[4]="Spawn"ConjureTypes[5]="Boneman"ConjureTypes[6]="Dragon"ConjureTypes[7]="Priest"ConjureTypes[8]="Dremora"ConjureTypes[9]="Lord"ConjureTypes[10]="Dwarven"ConjureTypes[11]="Sphere"ConjureTypes[12]="Spider"ConjureTypes[13]="Familiar"ConjureTypes[14]="Atronach"ConjureTypes[15]="Wraith"ConjureTypes[16]="Mistman"ConjureTypes[17]="Seeker"ConjureTypes[18]="Spectral"ConjureTypes[19]="Wrathman"ConjureTypes[20]="Arniel's"ConjureTypes[21]="Shade"ConjureTypes[22]="Arvak"ConjureTypes[23]="Gargoyle"ConjureTypes[24]="Portal"ConjureTypes[25]="Bats"ConjureTypes[26]="Zombie"ConjureTypes[27]="Corpse"ConjureTypes[28]="Undead"ConjureTypes[29]="Revenant"ConjureTypes[30]="Seeker";ConjureTypes[31]=;ConjureTypes[32]=;ConjureTypes[33]=;ConjureTypes[34]=;ConjureTypes[35]=;ConjureTypes[36]=;ConjureTypes[37]=;ConjureTypes[38]=;ConjureTypes[39]= ;***********************************************PotionPotencies=new string[21]PotionPotencies[1]="Weak"PotionPotencies[2]="Strong"PotionPotencies[3]="Minor"PotionPotencies[4]="Ultimate"PotionPotencies[5]="Brief"PotionPotencies[6]="Deadly"PotionPotencies[7]="Enduring"PotionPotencies[8]="Enhanced"PotionPotencies[9]="Extended"PotionPotencies[10]="Extra"PotionPotencies[11]="Perfect"PotionPotencies[12]="Grand"PotionPotencies[13]="Lasting"PotionPotencies[14]="Lingering"PotionPotencies[15]="Long"PotionPotencies[16]="Persisting"PotionPotencies[17]="Potent"PotionPotencies[18]="Potency"PotionPotencies[19]="Unceasing"PotionPotencies[20]="Virulent" PotionAlchTypes=new string[20]PotionAlchTypes[1]="Draught"PotionAlchTypes[2]="Elixir"PotionAlchTypes[3]="Elixer"PotionAlchTypes[4]="Essence"PotionAlchTypes[5]="Extract"PotionAlchTypes[6]="Phial"PotionAlchTypes[7]="Philter"PotionAlchTypes[8]="Potion"PotionAlchTypes[9]="Reserve"PotionAlchTypes[10]="Solution"PotionAlchTypes[11]="Venom" PotionEffects=new string[31]PotionEffects[1]="Aversion"PotionEffects[2]="Conflict"PotionEffects[3]="Cure"PotionEffects[4]="Healing"PotionEffects[5]="Stamina"PotionEffects[6]="Disease"PotionEffects[7]="Fear"PotionEffects[8]="Fire"PotionEffects[9]="Frenzy"PotionEffects[10]="Frost"PotionEffects[11]="Frostbite"PotionEffects[12]="Glibness"PotionEffects[13]="Health"PotionEffects[14]="Ice"PotionEffects[15]="Invisibility"PotionEffects[16]="Magic"PotionEffects[17]="Magick"PotionEffects[18]="Magicka"PotionEffects[19]="Malign"PotionEffects[20]="Paralysis"PotionEffects[21]="Recovery"PotionEffects[22]="Regeneration"PotionEffects[23]="Resist"PotionEffects[24]="Sap"PotionEffects[25]="Shock"PotionEffects[26]="Sleeping"PotionEffects[27]="Torpor"PotionEffects[28]="Berserker"PotionEffects[29]="Vigor"PotionEffects[30]="Waterbreathing" PotionSkills=new string[20]PotionSkills[1]="Blacksmith's"PotionSkills[2]="Alteration"PotionSkills[3]="Conjurer's"PotionSkills[4]="Defender"PotionSkills[5]="Escape"PotionSkills[6]="Feet"PotionSkills[7]="Haggling"PotionSkills[8]="Healer"PotionSkills[9]="Illusion"PotionSkills[10]="Keenshot"PotionSkills[11]="Knight"PotionSkills[12]="Larceny"PotionSkills[13]="Lockpicking"PotionSkills[14]="Plunder"PotionSkills[15]="Shot"PotionSkills[16]="Skirmisher's"PotionSkills[17]="Strength"PotionSkills[18]="True"PotionSkills[19]="Warrior" Foods=new string[60]Foods[0]="Tower"Foods[1]="Ale"Foods[2]="Alto"Foods[3]="Apple"Foods[4]="Argonian"Foods[5]="Baked"Foods[6]="Beef"Foods[7]="Berry"Foods[8]="Black-Briar"Foods[9]="Blood"Foods[10]="Blue"Foods[11]="Boiled"Foods[12]="Brandy"Foods[13]="Bread"Foods[14]="Breast"Foods[15]="Cabbage"Foods[16]="Carrot"Foods[17]="Charred"Foods[18]="Cheese"Foods[19]="Chicken"Foods[20]="Chop"Foods[21]="Clam"Foods[22]="Cooked"Foods[23]="Cream"Foods[24]="Dog"Foods[25]="Double-Distilled"Foods[26]="Carrot"Foods[27]="Charred"Foods[28]="Goat"Foods[29]="Gourd"Foods[30]="Green"Foods[31]="Haunch"Foods[32]="Homecooked"Foods[33]="Honey"Foods[34]="Honningbrew"Foods[35]="Horker"Foods[36]="Horse"Foods[37]="Juniper"Foods[38]="Leeks"Foods[39]="Leg"Foods[40]="Lotus"Foods[41]="Mammoth"Foods[42]="Mead"Foods[43]="Meal"Foods[44]="Meat"Foods[45]="Nightshade"Foods[46]="Nord"Foods[47]="Nut"Foods[48]="Pheasant"Foods[49]="Pie"Foods[50]="Potato"Foods[31]="Potatoes"Foods[32]="Raw"Foods[33]="Red"Foods[34]="Roll"Foods[35]="Rum"Foods[36]="Salmon"Foods[37]="Skeever"Foods[38]="Skooma"Foods[39]="Sliced"Foods[40]="Snout"Foods[41]="Soup"Foods[42]="Spiced"Foods[43]="Stew"Foods[44]="Taffy"Foods[45]="Tomato"Foods[46]="Treat"Foods[47]="Tree"Foods[48]="Vegetavle"Foods[49]="Velvet"Foods[50]="Venison"Foods[51]="Wedge"Foods[52]="Wheel"Foods[53]="White"Foods[54]="White-Gold"Foods[55]="Tomato"Foods[56]="Wine" PotionMisc=new string[30]PotionMisc[1]="Argonian"PotionMisc[2]="Balmora"PotionMisc[3]="Bane"PotionMisc[4]="Breath"PotionMisc[5]="Cliff"PotionMisc[6]="Colovian"PotionMisc[7]="Cyrodillic"PotionMisc[8]="Dragon's"PotionMisc[9]="Eidar"PotionMisc[10]="Elsweyr"PotionMisc[11]="Esbern's"PotionMisc[12]="Falmer"PotionMisc[13]="Finebrand"PotionMisc[14]="Holy"PotionMisc[15]="Jessica's"PotionMisc[16]="Kordir's"PotionMisc[17]="LeChance"PotionMisc[18]="M'Kai"PotionMisc[19]="Stallion's"PotionMisc[20]="Stros"PotionMisc[21]="the"PotionMisc[22]="to"PotionMisc[23]="of"PotionMisc[24]="Unknown"PotionMisc[25]="Vaermina's"PotionMisc[26]="Wraith" In order to make a compatibility patch a mod author will simply release a flat text file with the above format. This text file will get dropped into a folder for the VCE. Here is the tricky part. I want to run a batch file from papyrus that will dump to a text file the contents of this folder. With the names of all the text files in the folder I can then write an import function that will import these category arrays into appropriately named formlists & arrays, and as simple as that the mod will be compatible with the VCE.Question: I know I can run a batch file through console using the bat, command. How can I issue the bat command to console via papyrus? Link to comment Share on other sites More sharing options...
irswat Posted January 13, 2017 Author Share Posted January 13, 2017 Figured it out! Link to comment Share on other sites More sharing options...
irswat Posted January 13, 2017 Author Share Posted January 13, 2017 int function ImportModSupport() Console("Bat GetModList.bat") endFunction ;console and GetDXScanCode functions borrowed from ;http://www.gamesas.com/way-run-bat-from-script-t259754.html ;thanks Roberta Obrien, leigh stewart, and Allison Sizemore Function Console(String asCommand = "", Int aiCharIndex = 0, Int aiStringLength = 0) Input.TapKey(41) ; '~' aiStringLength = StringUtil.GetLength(asCommand) While (aiCharIndex < aiStringLength) Input.TapKey(GetDXScanCode(StringUtil.GetNthChar(asCommand, aiCharIndex))) aiCharIndex += 1 EndWhile Input.TapKey(28) ; 'Enter' Input.TapKey(41) ; '~' EndFunction Int Function GetDXScanCode(String asCharacter = "") If StringUtil.IsLetter(asCharacter) If asCharacter == "Q" Return 16 ElseIf asCharacter == "W" Return 17 ElseIf asCharacter == "E" Return 18 ElseIf asCharacter == "R" Return 19 ElseIf asCharacter == "T" Return 20 ElseIf asCharacter == "Y" Return 21 ElseIf asCharacter == "U" Return 22 ElseIf asCharacter == "I" Return 23 ElseIf asCharacter == "O" Return 24 ElseIf asCharacter == "P" Return 25 ElseIf asCharacter == "A" Return 30 ElseIf asCharacter == "S" Return 31 ElseIf asCharacter == "D" Return 32 ElseIf asCharacter == "F" Return 33 ElseIf asCharacter == "G" Return 34 ElseIf asCharacter == "H" Return 35 ElseIf asCharacter == "J" Return 36 ElseIf asCharacter == "K" Return 37 ElseIf asCharacter == "L" Return 38 ElseIf asCharacter == "Z" Return 44 ElseIf asCharacter == "X" Return 45 ElseIf asCharacter == "C" Return 46 ElseIf asCharacter == "V" Return 47 ElseIf asCharacter == "B" Return 48 ElseIf asCharacter == "N" Return 49 ElseIf asCharacter == "M" Return 50 EndIf ElseIf StringUtil.IsDigit(asCharacter) If asCharacter == "1" Return 2 ElseIf asCharacter == "2" Return 3 ElseIf asCharacter == "3" Return 4 ElseIf asCharacter == "4" Return 5 ElseIf asCharacter == "5" Return 6 ElseIf asCharacter == "6" Return 7 ElseIf asCharacter == "7" Return 8 ElseIf asCharacter == "8" Return 9 ElseIf asCharacter == "9" Return 10 ElseIf asCharacter == "0" Return 11 EndIf ElseIf asCharacter == " " Return 57 ElseIf asCharacter == "-" Return 12 ElseIf asCharacter == "=" Return 13 ElseIf asCharacter == "[" Return 26 ElseIf asCharacter == "]" Return 27 ElseIf asCharacter == ";" Return 39 ElseIf asCharacter == "'" Return 40 ElseIf asCharacter == "~" Return 41 ElseIf asCharacter == "," Return 51 ElseIf asCharacter == "." Return 52 ElseIf asCharacter == "/" Return 53 ElseIf asCharacter == " " Return 57 EndIf EndFunction then in GetModList.bat dir *.txt /b /a-d > ModList.txt Link to comment Share on other sites More sharing options...
Exergist Posted April 18, 2018 Share Posted April 18, 2018 Did you ever get this to work in Skyrim LE? I tried it out in Skyrim SE (with SKSE64 or course) and it didn't work. The console did open but nothing was typed in the console. It seemed like having the console open paused the execution of the key taps because if I manually exited the console the taps appeared to resume. Or did you end up using something else like ConsoleUtil to run your batch file? Link to comment Share on other sites More sharing options...
jcadley Posted July 20, 2018 Share Posted July 20, 2018 I tried this as well, and got the same result in Skyrim SE as did Exergist. It opens the console, and just waits. If I close the console myself, then it starts tapping out my programmed keystrokes again, some of which are just ignored, and some of which happen to be mapped keys - so I get the inventory, the Skyrim map, etc. Link to comment Share on other sites More sharing options...
Recommended Posts