Long overdue, and inspired by the Ashita plugin, I unofficially introduce "MAGA", an addon for Windower.
https://github.com/cairface/maga
Please do yourself -- and me -- a favor and fully read the documentation before you load this up. It is not a particularly complex addon, but its intricacies and unique functionality may confuse the standard end user.
The core functionality of this addon replicates the augmentation process without using menus or clicking any buttons. When you trade an armor or weapon to Oseem with this loaded, a menu will not pop up and your item will temporarily leave your inventory. This is normal. If you are not comfortable using it, then don't. You are by no means obligated.
How It Works
The main usage involves you trading the desired item to Oseem and then typing //maga start. At this point, the addon will begin using all of your stones to augment the traded item. When it matches an augment, it will print the match to the log and you have the option to accept it, continue, or cancel and receive your original item. This uses the exact same options that typical menu progression would take you through.
There are some important settings to note:
style (//maga style) : Sets the type of augment that will be chosen. Valid sub commands are magic, melee, healing, ranged, and familiar. If you do not pick a valid augment style for your traded item, you will get your item back.
taupe (//maga taupe) : Toggles whether or not to use taupe stones.
fern (//maga fern) : Toggles whether or not to use fern stones.
pellucid (//maga pellucid) : Toggles whether or not to use pellucid stones.
delay <#> : Sets the delay between augments to #. There is no minimum delay, but the maximum delay is 5.
At any time during the augmenting process, you can type //maga stop to cancel. This does not give you your item back yet! You still have to type //maga accept to accept the most recent augment or //maga cancel to receive your original item.
I'm Not Afraid, Tell Me About Augments!
Foremost, if you do not have any augments specified, that is automatically considered a "match", and it will stop after a single augment try. You can use this to verify that it's working if you so desire.
Augments are contained within "augment sets". MAGA will do the wonders of checking for you if the augments you received were better than the augments in any specified augment set. Augments within a single set must all match, but if you specify a single augment in two sets it will stop for either.
No more than six augments can be within a single set (because you can't have more than 6 afaik..), but you can have as many sets as your heart desires.
Commands:
add <augment name> <minimum value> <set number> : Adds "<augment name>" with minimum value match "<minimum value>" to set # <set number>. If a set number is not specified, the default is 1.
remove <augment name> <set number> : Removes "<augment name>" from set # <set number>. If a set number is not specified, the default is 1.
newset : Creates another augment set for you to add to.
delset <set number> : Removes set # <set number>. You can't remove set 1.
So, if I type //maga add "Magic Burst Damage" 9 (or //maga add "Magic Burst Damage" 9 1), the addon will now stop at any augment that has Magic Burst Damage >= 9. If I subsequently type //maga add INT 10, it will now stop on any augment that has Magic Burst Damage >= 9 AND INT >= 10.
Lovely.
So maybe you're going for fast cast as well. If I type //maga newset, a blank matching set will be created. This means that currently it will stop for (1) any augment that has Magic Burst Damage >= 9 AND INT >= 10 ... OR (2) any augment at all. Not so useful yet. However, if you add to set 2, //maga add "Fast Cast" 6 2, it will now stop for (1) any augment that has Magic Burst Damage >= 9 AND INT >= 10 ... OR (2) any augment that has Fast Cast > 6. Play around with this to your hearts desire.
When you're satisfied, you have the option to save your hard work:
save <profile name> : Saves your current augment sets to <profile name>
load <profile name> : Loads <profile name> to your current augment sets
Help, I Can't Figure Out What My Augment Is Called
I used a gutted version of windower's current extdata lib (thanks Byrth!) that normalizes the augment names for human comprehension (no periods, quotations, abbreviations). You are more than welcome to just look at the file in the folder and check the valid augment strings.
However, if you are super lazy, I have provided a gracious search feature.
search <search str> : returns and prints to log a list of the augments that contain the specified string
The GitHub has an issue tracker. I'm open to feedback, but don't get crazy. Don't say I never did anything.
Don't ask me if it's safe. It's as safe as any other thing that (1) automates a behavior (2) injects correct packets. That is to say, it's safe if you're not being stupid. Your account is your responsibility. That is the only statement you will receive about the safety of the addon.