Running an Importer Script
Clone this wiki locally
There are two types of scripts. The customizable scripts, and the importer scripts. The importer scripts will pull your character's data from the armory API, and use whatever data Blizzard hands us. This has some pros and cons to it.
On one hand, it's exceptionally easy and quick to get information about your character, and the gear/gems/etc it has on. On the other hand, it's susceptible to inaccuracies due to changes in gear (and the API not reflecting those changes, ie the hot-fixed i464 epic pvp gear), or bugged items that produce the wrong number of stats. The importer scripts will always get you close, but are not completely foolproof.
The importer scripts are rather maleable. When running a script (example: "python mop_assassination_import.py"), you can add many additional/optional overrides, like changing the default server, character, or modeling settings. Each setting is structured with the setting name on the left, and the value on the right, separated by colon (':'). If you want to grab, say, Killars from Vodka (first make sure the armory shows the right spec, the importer script isn't that intelligent yet), you can enter "python mop_combat_import.py realm:'Alterac Mountains' name:Killars" if he has been combat lately.
You see, the realm and name settings overrode the default hardcoded settings in the file (which are defaulted to yours truly, Pins of US-Doomhammer, on every fresh install). But the settings don't just end there...
- talents - Set a talent string differing from what the armory gives us.
- stormlash - Tells the engine to start trigging Stormlash Totem, use a number to determine the number of totems.
- pvp - True turns on the EP for pvp_power, and calculates sustained DPS as if it were against a player.
- shiv - Lets us factor in weaving shivs into the rotation. For health regen, enrage removal, or because you feel like being a special snowflake with reckless abandon.
The list will most likely continue to grow. If you wish to change the default values, it's actually quite easy to do so. They're all stored in a dictionary called 'charInfo' in an external file called 'char_info.py'. In that dictionary, you'll find a series of things to override, and their default value appearing similar to how you would enter them into your command line window. You will probably have to update this file each time you update Shadowcraft (for now).