Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

A good trade was ignored #3203

Closed
8 tasks done
woctezuma opened this issue May 13, 2024 · 4 comments
Closed
8 tasks done

A good trade was ignored #3203

woctezuma opened this issue May 13, 2024 · 4 comments
Labels
🐛 Bug Issues marked with this label indicate unintended program behaviour that needs correction. ✔️ Confirmed Issues marked with this label were acknowledged and confirmed by the developers. 🟡 Medium priority Issues marked with this label have a priority, unless there is something even more important.

Comments

@woctezuma
Copy link

woctezuma commented May 13, 2024

Checklist

ASF version

Latest stable release

ASF variant

generic (with latest .NET runtime)

Bug description

I have received this trade of 3 unmarketable cards in exchange of 3 of mine of the same set.

Picture

This trade would:

  • pick 1 card out of 2 duplicate n°1 cards
  • pick 2 cards out of 6 duplicate n°2 cards
  • provide the 3 cards which I am missing to complete the badge at level 3.

Picture

Expected behavior

The trade should have been accepted, because it is good.

Trade is good if our progress towards set completion advances. Example: A A (before) -> A B (after)

Actual behavior

2024-05-13 07:37:20|dotnet-1196|DEBUG|AW|ShouldAcceptTrade() L'offre d'échange 7005963806 est déterminée comme étant Rejected à cause de IsTradeNeutralOrBetter.
2024-05-13 07:37:20|dotnet-1196|INFO|AW|ParseTrade() Offre ignorée : 7005963806

Steps to reproduce

No response

Possible reason/solution

No response

Can you help us with this bug report?

Somehow, I can test and offer feedback, but can't code

Full log.txt recorded during reproducing the problem

2024-05-13 07:36:33|dotnet-1196|INFO|ASF|InitCore() ArchiSteamFarm V6.0.2.6 (generic/1404ce0eae88451988ae6a5727eb0ce1 | .NET 8.0.0; win-x64; Microsoft Windows 10.0.19045) in [C:\Applis\ASF-generic]
2024-05-13 07:36:33|dotnet-1196|INFO|ASF|InitCore() Copyright © 2015-2024 JustArchiNET
2024-05-13 07:36:34|dotnet-1196|WARN|ASF|InitGlobalConfigAndLanguage() Le fichier de configuration de config\ASF.json sera migré vers la dernière syntaxe...
2024-05-13 07:36:34|dotnet-1196|INFO|ASF|InitGlobalConfigAndLanguage() Fait !
2024-05-13 07:36:38|dotnet-1196|INFO|ASF|InitPlugins() Initialisation de Plugins...
2024-05-13 07:36:39|dotnet-1196|INFO|ASF|InitPlugins() Chargement ASFEnhance V2.1.2.1... 
2024-05-13 07:36:39|dotnet-1196|INFO|ASF|InitPlugins() "ASFEnhance" a été chargée avec succès !
2024-05-13 07:36:39|dotnet-1196|INFO|ASF|InitPlugins() Chargement CaseInsensitiveASF V0.4.1.0... 
2024-05-13 07:36:39|dotnet-1196|INFO|ASF|OnLoaded() Case Insensitive ASF Plugin by Ryzhehvost, powered by ginger cats
2024-05-13 07:36:39|dotnet-1196|INFO|ASF|InitPlugins() "CaseInsensitiveASF" a été chargée avec succès !
2024-05-13 07:36:39|dotnet-1196|INFO|ASF|InitPlugins() Chargement CommandlessRedeem V0.5.2.0... 
2024-05-13 07:36:39|dotnet-1196|INFO|ASF|OnLoaded() Commandless Redeem Plugin by Ryzhehvost, powered by ginger cats
2024-05-13 07:36:39|dotnet-1196|INFO|ASF|InitPlugins() "CommandlessRedeem" a été chargée avec succès !
2024-05-13 07:36:39|dotnet-1196|INFO|ASF|InitPlugins() Chargement ItemsMatcherPlugin V6.0.2.6... 
2024-05-13 07:36:39|dotnet-1196|INFO|ASF|InitPlugins() "ItemsMatcherPlugin" a été chargée avec succès !
2024-05-13 07:36:39|dotnet-1196|INFO|ASF|InitPlugins() Chargement MobileAuthenticatorPlugin V6.0.2.6... 
2024-05-13 07:36:39|dotnet-1196|INFO|ASF|InitPlugins() "MobileAuthenticatorPlugin" a été chargée avec succès !
2024-05-13 07:36:39|dotnet-1196|INFO|ASF|InitPlugins() Chargement SteamTokenDumperPlugin V6.0.2.6... 
2024-05-13 07:36:39|dotnet-1196|INFO|ASF|InitPlugins() "SteamTokenDumperPlugin" a été chargée avec succès !
2024-05-13 07:36:39|dotnet-1196|INFO|ASF|InitPlugins() Chargement FreePackages V1.4.5.0... 
2024-05-13 07:36:39|dotnet-1196|INFO|ASF|OnLoaded() Free Packages ASF Plugin by Citrinate
2024-05-13 07:36:39|dotnet-1196|INFO|ASF|InitPlugins() "FreePackages" a été chargée avec succès !
2024-05-13 07:36:39|dotnet-1196|INFO|ASF|InitPlugins() Chargement BoosterManager V2.9.0.1... 
2024-05-13 07:36:39|dotnet-1196|INFO|ASF|OnLoaded() BoosterManager ASF Plugin by Citrinate
2024-05-13 07:36:39|dotnet-1196|INFO|ASF|InitPlugins() "BoosterManager" a été chargée avec succès !
2024-05-13 07:36:39|dotnet-1196|INFO|ASF|InitPlugins() Vous avez chargé un ou plusieurs plugins personnalisés dans ASF. Étant donné que nous ne pouvons pas offrir de support pour les configurations moddées, veuillez contacter les développeurs appropriés des plugins que vous avez décidé d'utiliser en cas de problème.
2024-05-13 07:36:39|dotnet-1196|INFO|ASF|InitPlugins() Le plugin FreePackages/FreePackages a été enregistré et activé pour les mises à jour automatiques.
2024-05-13 07:36:39|dotnet-1196|INFO|ASF|InitPlugins() Le plugin BoosterManager/BoosterManager a été enregistré et activé pour les mises à jour automatiques.
2024-05-13 07:36:39|dotnet-1196|WARN|ASF|InitPlugins() Les plugins personnalisés ont été enregistrés pour les mises à jour automatiques. L'équipe ASF voudrait vous rappeler que, pour votre propre sécurité, vous ne devriez activer les mises à jour automatiques que des groupes de confiance. Si vous n'aviez pas l'intention de le faire, vous pouvez désactiver les mises à jour de plugin dans la configuration globale d'ASF.
2024-05-13 07:36:39|dotnet-1196|INFO|ASF|UpdateAndRestart() ASF recherchera automatiquement de nouvelles mises à jour tous les 1 jour.
2024-05-13 07:36:39|dotnet-1196|INFO|ASF|UpdateASF() Recherche d'une nouvelle version...
2024-05-13 07:36:39|dotnet-1196|INFO|ASF|UpdateASF() Version locale : 6.0.2.6 | Version la plus récente : 6.0.2.6
2024-05-13 07:36:39|dotnet-1196|INFO|ASF|UpdatePlugins() Vérification des mises à jour du plugin...
2024-05-13 07:36:39|dotnet-1196|INFO|ASF|UpdatePlugin() Vérification de la mise à jour du plugin FreePackages...
2024-05-13 07:36:39|dotnet-1196|INFO|ASF|UpdatePlugin() Vérification de la mise à jour du plugin BoosterManager...
2024-05-13 07:36:40|dotnet-1196|INFO|ASF|GetTargetReleaseURL() Aucune mise à jour disponible pour le plugin FreePackages : 1.4.5.0 † 1.4.5.0.
2024-05-13 07:36:40|dotnet-1196|INFO|ASF|GetTargetReleaseURL() Aucune mise à jour disponible pour le plugin BoosterManager : 2.9.0.1 † 2.9.0.1.
2024-05-13 07:36:40|dotnet-1196|INFO|ASF|Load() Chargement du cache STD global...
2024-05-13 07:36:40|dotnet-1196|INFO|ASF|OnASFInit() 
==========================================================================
 █████╗ ███████╗███████╗███████╗███╗   ██╗██╗  ██╗ █████╗ ███╗   ██╗ ██████╗███████╗
██╔══██╗██╔════╝██╔════╝██╔════╝████╗  ██║██║  ██║██╔══██╗████╗  ██║██╔════╝██╔════╝
███████║███████╗█████╗  █████╗  ██╔██╗ ██║███████║███████║██╔██╗ ██║██║     █████╗  
██╔══██║╚════██║██╔══╝  ██╔══╝  ██║╚██╗██║██╔══██║██╔══██║██║╚██╗██║██║     ██╔══╝  
██║  ██║███████║██║     ███████╗██║ ╚████║██║  ██║██║  ██║██║ ╚████║╚██████╗███████╗
╚═╝  ╚═╝╚══════╝╚═╝     ╚══════╝╚═╝  ╚═══╝╚═╝  ╚═╝╚═╝  ╚═╝╚═╝  ╚═══╝ ╚═════╝╚══════╝
ASFEnhance Version 2.1.2.1
Developed by Chr_, email chr@chrxw.com
Donate: https://afdian.net/@chr233
未加载外部模块
使用 "PLUGINVERSION [插件名]" / "PV [插件名]" 检查插件可用更新
使用 "PLUGINUPDATE [插件名]" / "PU [插件名]"  自动更新指定插件
不指定插件名时, 可为所有支持的插件检查更新 / 安装更新

2024-05-13 07:36:40|dotnet-1196|WARN|ASF|OnASFInit() 
ASFEnhance: ASFEnhance.EULA not agreed, some features is disabled
2024-05-13 07:36:40|dotnet-1196|INFO|ASF|Load() Validation de l'intégrité du cache STD global...
2024-05-13 07:36:40|dotnet-1196|INFO|ASF|OnASFInit() SteamTokenDumperPlugin est actuellement désactivé selon votre configuration. Si vous souhaitez aider SteamDB dans la soumission de données, veuillez consulter notre wiki.
2024-05-13 07:36:41|dotnet-1196|INFO|ASF|StartInteractiveConsole() La console interactive est maintenant active, tapez 'c' pour entrer en mode commande.
2024-05-13 07:36:41|dotnet-1196|INFO|ASF|Start() Démarrage du serveur IPC...
2024-05-13 07:36:42|dotnet-1196|INFO|Microsoft.Hosting.Lifetime|Now listening on: http://localhost:1242
2024-05-13 07:36:42|dotnet-1196|INFO|Microsoft.Hosting.Lifetime|Application started. Press Ctrl+C to shut down.
2024-05-13 07:36:42|dotnet-1196|INFO|Microsoft.Hosting.Lifetime|Hosting environment: Production
2024-05-13 07:36:42|dotnet-1196|INFO|Microsoft.Hosting.Lifetime|Content root path: C:\Applis\ASF-generic\
2024-05-13 07:36:42|dotnet-1196|INFO|ASF|Start() Serveur IPC prêt !
2024-05-13 07:36:42|dotnet-1196|ERROR|ASF|Load() Vous utilisez le paramètre AES de la propriété SteamPassword , mais vous n'avez pas fourni de --cryptkey personnalisé. Cela casse complètement la protection, car ASF est forcé d’utiliser sa propre clé (connue). Vous devez fournir une --cryptkey personnalisée pour utiliser les avantages de sécurité offerts par ce paramètre.
2024-05-13 07:36:43|dotnet-1196|ERROR|ASF|Load() Vous utilisez le paramètre AES de la propriété SteamPassword , mais vous n'avez pas fourni de --cryptkey personnalisé. Cela casse complètement la protection, car ASF est forcé d’utiliser sa propre clé (connue). Vous devez fournir une --cryptkey personnalisée pour utiliser les avantages de sécurité offerts par ce paramètre.
2024-05-13 07:36:43|dotnet-1196|INFO|AW|OnBotInitModules() Enable Free Packages : True
    328060,
    591960,
    704040,
    444640,
    298160,
    363970,
    1174500
  ]
2024-05-13 07:36:43|dotnet-1196|INFO|AW|OnBotInitModules() Games To Booster : [
    332070
  ]
2024-05-13 07:36:43|dotnet-1196|INFO|AW|Start() Démarrage...
2024-05-13 07:37:13|dotnet-1196|INFO|AW|Connect() Connexion...
2024-05-13 07:37:13|dotnet-1196|INFO|AW|OnConnected() Connecté à Steam !
2024-05-13 07:37:13|dotnet-1196|INFO|AW|OnConnected() Connexion en cours...
2024-05-13 07:37:14|dotnet-1196|INFO|AW|OnLoggedOn() ***/*** connecté avec succès.
2024-05-13 07:37:14|dotnet-1196|INFO|AW|Init() Succès !
2024-05-13 07:37:15|dotnet-1196|INFO|AW|IsAnythingToFarm() Vérification de la première page des badges...
2024-05-13 07:37:16|dotnet-1196|INFO|AW|UpdateBoosterInfos() Booster information updated
2024-05-13 07:37:16|dotnet-1196|INFO|AW|Run() Next booster will be crafted at 09:54:22
2024-05-13 07:37:16|dotnet-1196|INFO|AW|IsAnythingToFarm() Vérification des autres pages de badges...
2024-05-13 07:37:17|dotnet-1196|INFO|AW|Farm() Nous avons un total de 2 jeux (5 cartes) restants à traiter (~2 heures, 30 minutes restants)...
2024-05-13 07:37:17|dotnet-1196|INFO|AW|Farm() Algorithme de collecte choisi : Simple
2024-05-13 07:37:17|dotnet-1196|INFO|AW|FarmSolo() Collecte en cours : 1644940 (Loddlenaut)
2024-05-13 07:37:18|dotnet-1196|INFO|AW|ShouldFarm() Progression de la collecte pour 1644940 (Loddlenaut) : 2 cartes restantes
2024-05-13 07:37:18|dotnet-1196|INFO|AW|FarmCards() Collecte toujours en cours : 1644940 (Loddlenaut)
2024-05-13 07:37:18|dotnet-1196|INFO|AW|OnPersonaState() Annonce de *** (***) avec l'inventaire réalisé à partir de 400 au total sur la liste...
2024-05-13 07:37:18|dotnet-1196|INFO|AW|OnPersonaState() Succès !
2024-05-13 07:37:20|dotnet-1196|DEBUG|AW|ShouldAcceptTrade() L'offre d'échange 7005963806 est déterminée comme étant Rejected à cause de IsTradeNeutralOrBetter.
2024-05-13 07:37:20|dotnet-1196|INFO|AW|ParseTrade() Offre ignorée : 7005963806
2024-05-13 07:52:34|dotnet-1196|INFO|AW|ShouldFarm() Progression de la collecte pour 1644940 (Loddlenaut) : 2 cartes restantes
2024-05-13 07:52:34|dotnet-1196|INFO|AW|FarmCards() Collecte toujours en cours : 1644940 (Loddlenaut)
2024-05-13 07:57:19|dotnet-1196|INFO|Microsoft.Hosting.Lifetime|Application is shutting down...

Global ASF.json config file

{
  "MaxTradeHoldDuration": 0,
  "PluginsUpdateList": [
    "FreePackages",
    "CommandlessRedeem",
    "BoosterManager",
    "ASFEnhance",
    "CaseInsensitiveASF"
  ],
  "SteamOwnerID": ***,
  "SteamTokenDumperPluginEnabled": false,
  "ASFEnhance": {
    "EULA": false,
    "Statistic": false,
    "AutoClaimItemBotNames": "ASF",
    "DisabledCmds": [
      "ga"
    ]
  }
}

BotName.json config of all affected bot instances

{
  "BotBehaviour": 40,
  "Enabled": true,
  "FarmingPreferences": 128,
  "HoursUntilCardDrops": 0,
  "OnlineStatus": 7,
  "PasswordFormat": 1,
  "RedeemingPreferences": 5,
  "RemoteCommunication": 2,
  "SteamLogin": "***",
  "SteamMasterClanID": ***,
  "SteamPassword": "***",
  "TradingPreferences": 3,
  "EnableFreePackages": true,
  "FreePackagesFilter": {
    "PlaytestMode": 3,
    "IgnoreFreeWeekends": true,
    "IgnoredTypes": [
      "Demo"
    ]
  },
  "GamesToBooster": [
    332070
  ]
}

Additional info

No response

@woctezuma woctezuma added 🐛 Bug Issues marked with this label indicate unintended program behaviour that needs correction. 👀 Evaluation Issues marked with this label are currently being evaluated if they're going to be considered. labels May 13, 2024
@woctezuma
Copy link
Author

I will try again without custom plugins later, but I don't expect a change of behavior.

@JustArchi JustArchi added 💭 Acknowledged Issues marked with this label were acknowledged, but weren't verified yet, waiting for confirmation. 🟢 Low priority Issues marked with this label are actively being worked on if nothing serious is on the list. and removed 👀 Evaluation Issues marked with this label are currently being evaluated if they're going to be considered. labels May 13, 2024
@JustArchi
Copy link
Member

No need, I've confirmed it with unit test on our side. I have no clue what's wrong yet, but it's enough to move the issue forward.

@JustArchi JustArchi added ✔️ Confirmed Issues marked with this label were acknowledged and confirmed by the developers. 🟡 Medium priority Issues marked with this label have a priority, unless there is something even more important. and removed 💭 Acknowledged Issues marked with this label were acknowledged, but weren't verified yet, waiting for confirmation. 🟢 Low priority Issues marked with this label are actively being worked on if nothing serious is on the list. labels May 13, 2024
@JustArchi
Copy link
Member

Thank you a lot for reporting this issue, I've managed to add unit test verifying that what you stated above is correct, and ASF behaviour was wrong.

When excessive amount of "missing amounts", so items in the set was missing on our side, there was a possibility for our logic to classify a good trade as bad one, because we didn't fill in enough holes, as the subtraction in the condition was calculated on each loop rather than once initially.

Since this could only worsen the neutrality score, but never improve it (as the amounts were sorted ascending), there was no abusive possibility due to that, only ignoring otherwise valid trades classifying them as worse than they were in reality.

Fixed in V6.0.3.1 which I'll release in a second.

@woctezuma
Copy link
Author

Thank you! Have a nice week!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🐛 Bug Issues marked with this label indicate unintended program behaviour that needs correction. ✔️ Confirmed Issues marked with this label were acknowledged and confirmed by the developers. 🟡 Medium priority Issues marked with this label have a priority, unless there is something even more important.
Projects
None yet
Development

No branches or pull requests

2 participants