Closed dm1tz closed 2 months ago
@JustArchi, thanks a lot for the suggestions! Hope I got them right.
Will remove the trailing //
in the next push, don't want to trigger CI twice in case there are new suggestions.
I looked at the code and it looks fine (no wonder after Abrynos' and Archi's reviews), but to be honest I don't understand reasoning behind those commands and chosen way in which they work. First of all, ASF is a card farming app, not general account management tool, shouldn't it be in a plugin instead? And, secondly, why we try to convert rarities to enum, instead of just filtering by internal name (how user is supposed to know this name is another question, but understanding the match between enum and shown rarity is not straighforward anyway, if I understand it right). If we pick by internal name, wouldn't it be more generic and applicable to any game inventory, not just to Valve's games?
First of all, ASF is a card farming app, not general account management tool, shouldn't it be in a plugin instead?
As I stated earlier, added commands are derivatives of loot^
and transfer^
, if they were shipped as plugins, I would happily do as you proposed. Besides:
C# application with primary purpose of farming Steam cards from multiple accounts simultaneously.
how user is supposed to know this name is another question
Some variation of this where we can state the list of all available rarities, aliases and internal names.
If we pick by internal name, wouldn't it be more generic and applicable to any game inventory, not just to Valve's games?
I don't think it would be a good idea to have something like Rarity_Common_Weapon
as a valid user input. Additionally, matching directly from internal name would negate the usage of numeric input.
if they were shipped as plugins, I would happily do as you proposed
Still possible to extract them into official plugin shipped with ASF 😉
Thanks for your contribution :trophy:
Checklist
Changes
New functionality
Adds two derivatives of
loot^
andtransfer^
commands:loot&
andtransfer&
, allowing one to transfer Steam items that match user-provided set ofEAssetRarity
.Additional info
This implementation expands the current
EAssetRarity
enum with rarities inherent in official Valve games, namely: CS2, DOTA2 and TF2, as well as some non-Valve games that I'm somewhat familiar with (eg. PAYDAY2). Covering every possible item rarity in non-Valve games that support Steam Inventory Service is pretty unrealistic since, to my knowledge, there's no strict naming conventions.Some clarifications:
Seasonal
(DOTA2) andDefault
rarities are intentionally omitted, they are not tradable.tag.category.ToUpperInvariant()
is used because non-Valve games tend to have lowercaserarity
category. Conversely, the same category in Valve games isRarity
.Also, I'm not sure about
Arcana
rarity. It is DOTA2 specific, maybe it would be better to combine it withUnusual
? Would greatly appreciate any kind of feedback.