I use Tradeskillmaster for all of my auction house activities to make sure I buy at the right price and sell at the right price. TSM lets you make both very complex and very simple settings, and today I will look at when it makes sense to go for more complex settings.
Price values is where you go complex
The price values and formulas you use in your operations is the only place in TSM where you can introduce complexity. Most of the other settings are just sliders. You can make a complex auctioning setup by using a large number of operations for an item and you can make complex pricing strings in your operations.
My preference is simplicity
I personally greatly prefer simple TSM settings and most of my operations have very simple pricing formulas, and I don’t use too many auctioning operations. The only market where I use more than one auctioning operation is for materials as I want to cater to people who want different amounts of the material in question.
Complexity requires more effort, and is harder to share
This is the main reason why you would want to keep something simple. I share my settings with a lot of people obviously, so I try to keep them simple. It also makes sure there’s less chances to make an error and easier to make changes. Now for some settings you can get a lot more out of a group or an operation by including complexity. A great example is BilisOnycia’s well known sniper string that includes different max price thresholds based on how expensive the item is.
When does complexity give the largest advantage
Adding complexity to your minimum price alone makes very little sense. Your minimum price just needs to be higher than your acquisition cost. Generally speaking it should be either 115% crafting or higher for crafted goods and about 115-120% of your maximum shopping price for flipping.
Your maximum shopping price on the other hand can be a great option for a more elaborate pricing string. Using a similar logic to BilisOnyxia’s sniper string for battle pets for instance makes a lot of sense as the deposit cost is very low, so you can post a pet for a long time even for just 15% profit and not lose gold, and if that 15% profit is on a TCG pet worth 500k, then it’s still worth more than flipping a ton of 1k battle pets.
Your normal price
The normal price in your operation can also be a great place for some more complex behaviour. In 8.0 I used an ifgt() check to post the epic procs of the Honorable combatant gear for a higher price than the rare versions. You can also use a set of nested ifgt() clauses together with one of the rounding formulas to make sure you post your items at a nice round price.
The best ways to get started
If you want to experiment with some more complex strings there are two sets of functions in TSM that I find most useful. The max() and min() functions as well as all the various if() functions. You can use these together to make some pretty cool pricing strings. Simple applications include using a minimum price like: max(115%,avgbuy,dbmarket) to ensure the minimum profit is 15% above your average purchase price or adding an item level based increase to the price with this: ifgt(itemlevel,330,1.2,1)*dbmarket This one evaluates to 1.2*dbmarket if the itemlevel is above 330, and dbmarket if the item level is below 330.
Your strings have to be based on some sort of behaviour or strategy you want to implement. So try to think up some ideas for situations where you would want some more complex behaviour, take a crack at making a string and post it in the comments. I’ll take a look at any that get posted and help you out!
If you want to level up your gold making come join me on Patreon and get access to awesome rewards like Early Access to all my posts.
3 thoughts on “TSM4: Simplicity and Complexity”
Hey, I’ve got a question: I’m trying to set up a selling operation for LEvel 19 PVP Gear, which can be either rare ones with itemlevel 25 or epic ones with itemlevel 31. I tried the “ifgt” or “iflt” operation to set different prices depending on if its the rare or epic one, but it always sets the same price for both. 🙁 What am I doing wrong?
min: iflt(ItemLevel,31,40% dbregionmarketavg,400% dbregionmarketavg)
max: iflt(ItemLevel,31,400% dbregionmarketavg,4000% dbregionmarketavg)
normal: iflt(ItemLevel,31,200% dbregionmarketavg,2000% dbregionmarketavg)
The sources you linked seem correct to me. I’d have to test it a bit in game to get a better idea.
try “40%dbregionmarketavg”, NOT “40% dbregionmarket”.
(without a space)… had the same problem.