Function is introduced

Steam is well known for its market features, which allow players to trade inventory with each other (barter for money), and players to trade inventory with other players (barter). Here we discuss the latter, that is, how to automatically complete a closed trading loop. In order to complete automatic trading, our robot needs to have the following functions, most of which I have implemented, but a few details are yet to be developed.

  • Automatically log into your Steam account
  • Detects if there is a new trade offer
  • Automatically accept trade quotes
  • Check whether the mobile device needs to confirm
  • Automatically simulates mobile device confirmation
  • Different detail requirements related to business

The difficulty parsing

The function points listed above are the most important functions of the robots that have been completed. There are several unavoidable technical difficulties to complete the above functions, which are listed here one by one. A few notes before listing:

  1. The project is encoded in Node.js
  2. If you have your own way of implementing these technical points, you can naturally adopt your own implementation
  3. In this series of articles reading and coding, you need to be able to see the outside world
  4. My own coding ability may be limited, everything is to complete the business needs, if you have better coding ability can read the article in accordance with their own ideas to write

After understanding the above precautions, we began to analyze the problems encountered in the process of completing a robot:

  1. Login: the mobile phone token needs to be bound. How to make the robot calculate the token of this account locally to realize automatic login?
  2. Confirm transactions: If steam requires users to confirm transactions on mobile devices with mobile tokens attached to them when they have their trinkets traded to others in a transaction, how can the bots simulate mobile devices with mobile tokens attached to confirm transactions?
  3. Accept trade quotes: Since the steamAPI only has interfaces to get trade quotes and reject/cancel trade quotes, how do you get the bot to automatically accept trade quotes and move on to the next step?

The above three issues are the three essential steps to making a Steam bot. Once these three issues are addressed, the rest of the Steam bot features can be adjusted accordingly as business needs change. It is easy to customize your own Steam bot.

The business scenario

In this series OF articles I’ll take a more realistic look at how I use the robot, using a real business scenario.

The service scenario is described as follows:

As mentioned in the beginning, Steam has its own market where players can buy and sell their own inventory of accessories. In fact, there are many third-party Steam accessories trading sites, I picked two sites: C5Game and netease Buff. Each third-party platform (hereinafter referred to as the platform for short) has merchants publishing the information of selling or purchasing Steam ornaments. If the selling price of the same ornaments on platform A is lower than that on platform B, the robot will be used to purchase ornaments from Platform A and sell them on platform B to obtain the price difference and earn profits.

ps: Business scenarios above is just a scene, I didn’t say this business scenario can make money, I realize the scene is just for the sake of Steam robot applications, in fact if you will be the scene of the encoding natural can customize their own business scenarios, such as monitoring the price of the accessories sweep bulk cargo shipping, etc., I just provide the thinking of coding, Here take C5GAME and netease BUFF Dota2 ornaments as examples

To implement this business scenario, the following additional features are required in addition to the features of the Steam bot mentioned at the beginning:

  • Crawler: crawls the platform jewelry information
  • Automatic login to the platform: Use puppeteer to automatically log in
  • The automatic trading function of the platform
  • Automatic receiving and shipping function of the platform

Some of the additional features mentioned above may not be coded in detail, after all, the series will focus on the coding of Steam bots. If there is a strong response, there will be a series of additional tutorial articles.

At the end

This article, as the opening chapter of the Steam robot series, briefly describes the difficulties and specific business application scenarios of steam robot implementation, so the next article: Steam robot (2) automatic login, choose to meet with you

supplement

The article did not finish, because in writing resume looking for a job may be stranded for a period of time, but the code is open: github.com/LhrAlander/…