JustArchiNET / ArchiSteamFarm

C# application with primary purpose of farming Steam cards from multiple accounts simultaneously.
Apache License 2.0
10.92k stars 1.04k forks source link

Inventory fetching through CM #3155

Closed ezhevita closed 4 months ago

ezhevita commented 4 months ago

Checklist

Changes

New functionality

None

Changed functionality

Inventory fetching now works using CM requests instead of web API, there are no rate-limits and it allows loading even 82k+ inventories in about 11 seconds.

Removed functionality

Fetching foreign inventories is no longer possible, however it wasn’t used in ASF anyway and it is rate-limited to hell ¯\_(ツ)_/¯

Additional info

This code was in production for about a year so it works pretty stable and Steam didn’t break anything in this time period. Also current implementation of AdditionalProperties is pretty awkward so any suggestions to improve it are welcome.

JustArchi commented 4 months ago

After brief evaluation, good stuff :+1:

I'd use this opportunity to refactor and reuse components as much as possible instead of bringing up our own ones:

Does that make sense to you? If yes, we don't need to worry about breaking changes much (for plugin creators), as such refactor is totally justified for future of the program.

JustArchi commented 4 months ago

Thanks a lot! :trophy: