chalkos/Marketbuddy

Hold a certian modified key to undercut by 0

Opened this issue · 7 comments

DenL commented

What's your suggestion?

Use case: In most times I want to undercut by 1gil or w/e the setting is. But with some specific item vs certain sellers I have a deal with, I'd like to undercut by 0. Having to change setting back and forth is a bit troublesome.

Would be great if we could hold on a modified key when clicking a listing to match price (undercut by 0 gil). Thanks!

What about a list of retainers to not undercut?
We have ran out of keys since CTRL, SHIFT and ALT are all used for something.

the list would allow you to not undercut your other retainers as well since you could add them as an exception too. But this would only check the retainer that is selling the item you clicked on, it wouldn't check all the retainers selling at that price to see if somebody there is in your list. But that is a good thing since if there's already other competition other than your friends or your own retainers, you'll want to undercut anyway. what do you think? anything else you'd add/do differently?

And what about combinations? e.g CTRL + SHIFT

Or something like in SimpleTweaks
image

DenL commented

This would be modified key while clicking on a listing (not when opening the listing), I think we don't have a modified key for that yet? (might be mistaken)

DenL commented

What about a list of retainers to not undercut? We have ran out of keys since CTRL, SHIFT and ALT are all used for something.

the list would allow you to not undercut your other retainers as well since you could add them as an exception too. But this would only check the retainer that is selling the item you clicked on, it wouldn't check all the retainers selling at that price to see if somebody there is in your list. But that is a good thing since if there's already other competition other than your friends or your own retainers, you'll want to undercut anyway. what do you think? anything else you'd add/do differently?

A list of retainers is probably a better solution! Sorry I was in a hurry and didn't read carefully.

I don't see any downsides to both options, so why not add both?
As DenL already said, we don't have a modified key there. So you could just do something like this there:

var price = getPricePerItem(nodeParam);
price -= conf.HoldCtrlToSkipUndercut && Keys[VirtualKey.CONTROL] ? 0 : conf.UndercutPrice;

Maybe a configurable variable instead of a 0

It's true that it wouldn't interfere with existing behaviour that is modified by having control held down, but I don't want to add another hidden modifier unless absolutely required.

Plus, with the "list of retainers to not undercut" the player is not required to be making a decision everytime they post an item/update a price, of wether to undercut or not (and hold down a button). It just happens according to what has been configured, kind of set it once and forget about it. So that's the one I'll go with.