Este plugin fornece uma interface fácil de usar para transformar joias em boosters e inclui ferramentas para gerenciar cartões colecionáveis e outros itens relacionados em seus inventários e no mercado.
Este projeto foi originalmente baseado no Booster Creator Plugin de Outzzz e Rudokhvist
plugins
dentro da pasta ASF.Observação
Este plugin foi testado apenas para funcionar com ASF genérico. Pode ou não funcionar com outras variantes do ASF, mas sinta-se à vontade para relatar quaisquer problemas que possa encontrar.
Os parâmetros entre colchetes às vezes são [Optional]
, os parâmetros entre colchetes são sempre
. Parâmetros plurais como [Bots]
podem aceitar vários valores separados por ,
como A,B,C
Comando | Acesso | Descrição |
---|---|---|
booster [Bots] | Master | Adiciona AppIDs à fila de reforço do bot fornecido. |
booster^ [Bots] | Master | Adiciona AppIDs a algumas ou todas as filas de boosters de determinado bot, selecionados de forma a minimizar o tempo necessário para criar uma Amount total de boosters. Os Amounts especificados podem ser um valor único para todos AppIDs ou vários valores para cada AppID , respectivamente. |
bstatus [Bots] | Master | Imprime o status da fila de reforço do bot determinado. |
bstatus^ [Bots] | Master | Imprime um status abreviado da fila de reforço do bot em questão. |
bstop [Bots] | Master | Remove AppIDs da fila de reforço do bot fornecido. |
bstoptime [Bots] | Master | Remove tudo da fila de reforço do bot específico que levará mais do que as Hours fornecidas para ser criado. |
bstopall [Bots] | Master | Remove tudo da fila de reforço do bot determinado. |
brate [Level] | Master | Imprime a taxa ideal de drop de booster para uma conta no Level |
bdrops [Bots] | Master | Imprime o número de jogos elegíveis para reforço para os bots fornecidos |
Observação
Quaisquer comandos booster
que não tenham sido concluídos quando o ASF for fechado serão retomados automaticamente na próxima vez que o ASF for executado.
Comando | Acesso | Descrição |
---|---|---|
gems [Bots] | Master | Exibe o número de joias pertencentes a um determinado bot. |
lootgems [Bots] | Master | Envia todas as joias do bot fornecido para o usuário Master . |
lootsacks [Bots] | Master | Envia todos os "Sack of Gems" do bot fornecido para o usuário Master . |
transfergems [Bot] | Master | Envia as Amounts fornecidas de joias descompactadas de um determinado bot para o bot de destino determinado. Os Amounts especificados podem ser um único valor enviado a todos os bots de destino ou vários valores enviados a cada bot de destino, respectivamente. Você também pode usar queue ou q como um valor para representar o número de gemas necessárias para completar a fila de reforço do bot alvo. |
transfergems^ [Bots] | Master | Envia todas as joias de um determinado bot para um determinado bot de destino. |
transfersacks [Bots] | Master | Envia todos os "Sack of Gems" de um determinado bot para um determinado bot alvo. |
unpackgems [Bots] | Master | Descompacta todos os "Sack of Gems" de propriedade de determinado bot. |
Esses comandos operam apenas em boosters comercializáveis. Para saquear ou transferir apenas boosters não comercializáveis, adicione u
ao início do comando, ex: ulootboosters
. Para saquear ou transferir todos os boosters, adicione a
no início do comando, ex: alootboosters
Comando | Acesso | Descrição |
---|---|---|
boosters [Bots] | Master | Exibe o número de boosters comercializáveis pertencentes a um determinado bot. |
lootboosters [Bots] | Master | Envia todos os boosters comercializáveis do bot fornecido para o usuário Master . |
transferboosters [Bots] | Master | Envia todos os boosters comercializáveis de um determinado bot para um determinado bot alvo. |
Esses comandos operam apenas em cartões comercializáveis. Para saquear ou transferir apenas cartas não comercializáveis, adicione u
ao início do comando, ex: ulootcards
. Para saquear ou transferir todas as cartas, adicione a
no início do comando, ex: alootcards
Comando | Acesso | Descrição |
---|---|---|
cards [Bots] | Master | Exibe o número de cartões comerciais não metalizados comercializáveis de propriedade de um determinado bot. |
foils [Bots] | Master | Exibe o número de cartões colecionáveis foil comercializáveis pertencentes a um determinado bot. |
lootcards [Bots] | Master | Envia todos os cartões comerciais não metalizados comercializáveis do bot fornecido para o usuário Master . |
lootfoils [Bots] | Master | Envia todos os cartões comerciais foil comercializáveis do bot fornecido para o usuário Master . |
transfercards [Bots] | Master | Envia todos os cartões comerciais não metalizados comercializáveis de um determinado bot para um determinado bot alvo. |
transferfoils [Bots] | Master | Envia todos os cartões colecionáveis foil comercializáveis de um determinado bot para um determinado bot alvo. |
Comando | Acesso | Descrição |
---|---|---|
keys [Bots] | Master | Exibe o número de "Chave da caixa de suprimentos Mann Co." de propriedade de determinado bot. |
lootkeys [Bots] | Master | Envia todas as "chaves da caixa de suprimentos da Mann Co." do bot fornecido para o usuário Master . |
transferkeys [Bot] | Master | Envia as Amounts fornecidas de "Chave da caixa de suprimentos Mann Co." do bot fornecido para o bot alvo determinado. Os Amounts especificados podem ser um único valor enviado a todos os bots de destino ou vários valores enviados a cada bot de destino, respectivamente. |
transferkeys^ [Bots] | Master | Envia todas as "Chaves da caixa de suprimentos da Mann Co." do bot fornecido para o bot alvo especificado. |
Esses comandos ignoram a comercialização. Para saquear ou transferir apenas itens comercializáveis, adicione m
ao início do comando, ex: mlootitems
. Para saquear ou transferir apenas itens não comercializáveis, adicione u
ao início do comando, ex: ulootitems
.
Comando | Acesso | Descrição |
---|---|---|
countitems | Master | Exibe o número de itens pertencentes a um determinado bot com AppID , ContextID e ItemIdentifier correspondentes. |
lootitems | Master | Envia todos os itens com AppID , ContextID e qualquer um dos ItemIdentifiers correspondentes do bot fornecido para o usuário Master . |
transferitems | Master | Envia todos os itens com AppID , ContextID e qualquer um dos ItemIdentifiers correspondentes do bot fornecido para o bot de destino especificado. |
transferitems^ | Master | Envia uma quantidade de itens com AppID , ContextID e qualquer um dos ItemIdentifiers correspondentes do bot fornecido para o bot de destino especificado. Os Amounts especificados podem ser um valor único de cada item enviado a todos os bots alvo ou quantidades diferentes de cada item, respectivamente, enviados a todos os bots alvo. |
transferitems% | Master | Envia uma quantidade de um item com AppID , ContextID e ItemIdentifier correspondentes do bot fornecido para o bot de destino especificado. Os Amounts especificados podem ser um único valor enviado a todos os bots de destino ou valores diferentes enviados para cada bot de destino, respectivamente. |
Comando | Acesso | Descrição |
---|---|---|
trade2faok [Bot] [Minutes] | Master | Aceita todas as confirmações de negociação 2FA pendentes para determinadas instâncias de bot. Opcionalmente, repita esta ação uma vez a cada Minutes . Para cancelar qualquer repetição, defina Minutes como 0. |
tradecheck [Bot] | Master | Tente lidar com quaisquer negociações recebidas para um determinado bot usando a lógica de negociação do ASF. |
tradesincoming [Bot] [From] | Master | Exibe o número de negociações recebidas para um determinado bot, opcionalmente filtrado para contar apenas as negociações From nomes de bot fornecidos ou SteamIDs de 64 bits. |
Comando | Acesso | Descrição |
---|---|---|
buylimit | Master | Exibe o valor das ordens de compra ativas de determinado bot e o quão perto o bot está de atingir o limite da ordem de compra. |
findlistings | Master | Exibe os ListingIDs de qualquer listagem de mercado pertencente ao bot fornecido e que corresponda a qualquer um dos ItemIdentifiers . |
findandremovelistings | Master | Remove qualquer listagem de mercado pertencente ao bot fornecido e que corresponda a qualquer um dos ItemIdentifiers . |
listings [Bots] | Master | Exibe o valor total de todas as listagens de mercado ativas de propriedade de determinado bot. |
removelistings [Bot] | Master | Remove ListingIDs de mercado pertencentes ao bot fornecido. |
removepending | Master | Remove todas as listagens de mercado pendentes pertencentes ao bot em questão. |
market2faok [Bot] [Minutes] | Master | Aceita todas as confirmações de mercado 2FA pendentes para determinadas instâncias de bot. Opcionalmente, repita esta ação uma vez a cada Minutes . Para cancelar qualquer repetição, defina Minutes como 0. |
value [Bots] [BalanceLimit] | Master | Exibe o saldo combinado da carteira e o valor total de todas as listagens de mercado ativas de propriedade de determinado bot. O saldo máximo permitido em sua região pode ser fornecido como BalanceLimit , um número inteiro, e em vez disso exibirá o quão perto o bot está de atingir esse limite. |
Comando | Acesso | Descrição |
---|---|---|
logdata [Bots] | Master | Uma combinação dos comandos logboosterdata , loginventoryhistory , logmarketlistings e logmarkethistory . |
logboosterdata [Bots] | Master | Coleta dados de reforço de um determinado bot e os envia para BoosterDataAPI |
loginventoryhistory [Bots] [Count] [StartTime] [TimeFrac] [S] | Master | Coleta dados do histórico de inventário de determinado bot e os envia para InventoryHistoryAPI . O número de páginas do histórico de inventário pode ser especificado usando Count e pode começar na página especificada por StartTime sozinho ou pela combinação de StartTime , TimeFrac e S |
logmarketlistings [Bots] | Master | Coleta dados de listagens de mercado de determinado bot e os envia para MarketListingsAPI |
logmarkethistory [Bots] [Count] [Start] | Master | Coleta dados históricos de mercado de determinado bot e os envia para MarketHistoryAPI . O número de páginas do histórico do mercado pode ser especificado usando Count e pode começar na página especificada por Start |
logstop [Bots] | Master | Interrompe qualquer comando loginventoryhistory ou logmarkethistory em execução ativa. |
Comando | Acesso | Descrição |
---|---|---|
boostermanager | FamilySharing | Imprime a versão do plugin. |
Um identificador de item é uma entrada usada em determinados comandos que permite direcionar itens ou grupos de itens específicos. Se um comando permitir vários identificadores de item, cada identificador deverá ser separado por &&
em vez de uma vírgula. Os formatos válidos para um identificador de item são os seguintes:
Formatar | Exemplo |
---|---|
ItemName | O identificador Gems corresponderá a todos os itens "Gems" |
ItemType | O identificador Steam Gems corresponderá a todos os itens "Sack of Gems" e "Gems" |
HashName | Os identificadores 753-Sack of Gems ou 753-Sack%20of%20Gems corresponderão a todos os itens "Sack of Gems" |
AppID::ContextID | O identificador 753::6 corresponderá a todos os itens da Comunidade Steam |
AppID::ContextID::ClassID | O identificador 753::6::667933237 corresponderá a todos os itens do "Saco de Gemas" |
Observação
Informações sobre como determinar AppID
, ContextID
, ClassID
, ItemName
, ItemType
e HashName
podem ser encontradas aqui.
A maioria dos comandos pluralizados também possui um alias não pluralizado; ex: lootboosters
tem o apelido lootbooster
Comando | Alias |
---|---|
buylimit | bl |
findlistings | fl |
findandremovelistings | frl |
removelistings | rlistings , removel |
removepending | rp |
logboosterdata | logbd |
loginventoryhistory | logih |
logmarketlistings | logml |
logmarkethistory | logmh |
market2faok | m2faok |
trade2faok | t2faok |
tradecheck | tc |
tradesincoming | ti |
Comando | Alias |
---|---|
bstatus ASF | bsa |
bstatus^ ASF | bsa^ |
boosters asf | ba |
buylimit ASF | bla |
cards asf | ca |
foils asf | fa |
gems ASF | ga |
keys ASF | ka |
listings ASF | lia |
logdata ASF | lda , loga |
lootboosters ASF | lba |
lootcards ASF | lca |
lootfoils ASF | lfa |
lootgems ASF | lga |
lootkeys ASF | lka |
lootsacks ASF | lsa |
market2faok ASF [Minutes] | m2faoka [Minutes] |
trade2faok ASF [Minutes] | t2faoka [Minutes] |
tradecheck ASF | tca |
tradesincoming ASF [From] | tia [From] |
tradesincoming ASF ASF | tiaa |
transferboosters ASF | tba |
transfercards ASF | tca |
transferfoils ASF | tfa |
value ASF [BalanceLimit] | va [BalanceLimit] |
tipo bool
com valor padrão true
. Esta definição de configuração pode ser adicionada ao seu arquivo de configuração ASF.json
. Se definido como false
, as gemas não negociáveis não serão usadas para criar boosters, e o comando unpackgems
não descompactará o "Saco de Gemas" não negociável.
"AllowCraftUntradableBoosters" : false ,
tipo bool
com valor padrão true
. Esta definição de configuração pode ser adicionada ao seu arquivo de configuração ASF.json
. Se definido como false
, o plugin não criará boosters não comercializáveis.
"AllowCraftUnmarketableBoosters" : false ,
Observação
O plug-in não consegue detectar imediatamente quando os boosters de um jogo passam de comercializáveis para não comercializáveis. Geralmente, leva cerca de 4 horas para detectar essa alteração.
Tipo HashSet
com valor padrão de []
. Essa definição de configuração pode ser adicionada aos arquivos de configuração do bot individuais. Ele adicionará automaticamente todos os AppIDs
à fila de reforço do bot e os recolocará automaticamente na fila depois de criados.
Exemplo:
"GamesToBooster" : [ 730 , 570 ],
Observação
Não é possível remover nenhum desses AppIDs
da fila de reforço usando nenhum comando. Quaisquer alterações que você queira fazer precisarão ser feitas no arquivo de configuração.
tipo string
sem valor padrão. Esta definição de configuração pode ser adicionada ao seu arquivo de configuração ASF.json
. Quando o comando logboosterdata
é usado, os dados do booster serão coletados e enviados para a API localizada no URL especificado.
Exemplo:
"BoosterDataAPI" : " http://localhost/api/boosters " ,
Você precisará projetar sua API para aceitar solicitações e retornar respostas de acordo com as seguintes especificações:
Método : POST
Tipo de conteúdo : application/json
Nome | Tipo | Descrição |
---|---|---|
steamid | ulong | SteamID do bot ao qual data pertencem |
source | string | https://steamcommunity.com/tradingcards/boostercreator/ |
data | JArray | Os dados analisados da source e enviados como uma matriz de objetos. Detalhado abaixo. |
data[][appid] | uint | AppID do jogo de reforço |
data[][name] | string | Nome do jogo de reforço |
data[][series] | uint | Número de série do reforço |
data[][price] | uint | Preço do booster em gemas |
data[][unavailable] | bool | Definido como true quando o booster está em espera de 24 horas |
data[][available_at_time] | string? | Uma sequência de data e hora no formato ISO 8601; se unavailable for false , será null |
Tipo de conteúdo : application/json
Nome | Tipo | Obrigatório | Descrição |
---|---|---|---|
success | bool | Sim | Se suas operações foram bem-sucedidas ou falharam. |
message | string | Não | Uma mensagem personalizada que será exibida no lugar da mensagem padrão de êxito/falha |
show_message | bool | Não | Mostrar ou não alguma mensagem |
tipo string
sem valor padrão. Esta definição de configuração pode ser adicionada ao seu arquivo de configuração ASF.json
. Quando o comando logmarketlistings
é usado, os dados da listagem de mercado serão coletados e enviados para a API localizada na URL especificada.
Exemplo:
"MarketListingsAPI" : " http://localhost/api/listings " ,
Você precisará projetar sua API para aceitar solicitações e retornar respostas de acordo com as seguintes especificações:
Método : POST
Tipo de conteúdo : application/json
Nome | Tipo | Descrição |
---|---|---|
steamid | ulong | SteamID do bot ao qual data pertencem |
source | string | https://steamcommunity.com/market/mylistings?norender=1 |
data | JObject | Os dados obtidos diretamente da source com valores de string vazios convertidos em null |
Nota A paginação aqui não é suportada. Embora
source
suporte paginação paradata[listings]
, essas informações podem ser recriadas usando a API Market History.
Tipo de conteúdo : application/json
Nome | Tipo | Obrigatório | Descrição |
---|---|---|---|
success | bool | Sim | Se suas operações foram bem-sucedidas ou falharam. |
message | string | Não | Uma mensagem personalizada que será exibida no lugar da mensagem padrão de sucesso/falha |
show_message | bool | Não | Mostrar ou não alguma mensagem |
tipo string
sem valor padrão. Esta definição de configuração pode ser adicionada ao seu arquivo de configuração ASF.json
. Quando o comando logmarkethistory
é usado, os dados do histórico do mercado serão coletados e enviados para a API localizada na URL especificada.
Exemplo:
"MarketHistoryAPI" : " http://localhost/api/markethistory " ,
Você precisará projetar sua API para aceitar solicitações e retornar respostas de acordo com as seguintes especificações:
Método : POST
Tipo de conteúdo : application/json
Nome | Tipo | Descrição |
---|---|---|
steamid | ulong | SteamID do bot ao qual data pertencem |
source | string | https://steamcommunity.com/market/myhistory?norender=1&count=500 |
page | uint | Número da página, definido como floor(data[start] / 500) + 1 |
data | JObject | Os dados obtidos diretamente da source com valores de string vazios convertidos em null |
Nota Várias páginas de
data
serão solicitadas sequencialmente e não em paralelo.
Tipo de conteúdo : application/json
Nome | Tipo | Obrigatório | Descrição |
---|---|---|---|
success | bool | Sim | Se suas operações foram bem-sucedidas ou falharam. Se houver mais páginas para buscar, o plugin só continuará quando success for true |
message | string | Não | Uma mensagem personalizada que será exibida no lugar da mensagem padrão de sucesso/falha |
show_message | bool | Não | Mostrar ou não alguma mensagem |
get_next_page | bool | Não | Se deve ou não buscar a próxima página. Se o plugin já iria buscar a próxima página de qualquer maneira, isso não fará nada. |
next_page | uint | Não | Se get_next_page estiver definido como true , a próxima página será obtida usando este número de página |
tipo string
sem valor padrão. Esta definição de configuração pode ser adicionada ao seu arquivo de configuração ASF.json
. Quando o comando loginventoryhistory
é usado, os dados do histórico de inventário serão coletados e enviados para a API localizada no URL especificado.
Exemplo:
"InventoryHistoryAPI" : " http://localhost/api/inventoryhistory " ,
Você precisará projetar sua API para aceitar solicitações e retornar respostas de acordo com as seguintes especificações:
Método : POST
Tipo de conteúdo : application/json
Nome | Tipo | Descrição |
---|---|---|
steamid | ulong | SteamID do bot ao qual data pertencem |
source | string | https://steamcommunity.com/my/inventoryhistory/?ajax=1 |
page | uint | O valor do parâmetro de consulta start_time usado para solicitar source . Se um objeto cursor foi usado para solicitar source , será igual a cursor[time] |
cursor | JObject | O valor do parâmetro de consulta do objeto cursor usado para solicitar source |
data | JObject | Os dados obtidos diretamente da source com valores de string vazios convertidos em null |
Nota A documentação da API de histórico de inventário do Steam pode ser encontrada aqui
Nota Várias páginas de
data
serão solicitadas sequencialmente e não em paralelo.
Tipo de conteúdo : application/json
Nome | Tipo | Obrigatório | Descrição |
---|---|---|---|
success | bool | Sim | Se suas operações foram bem-sucedidas ou falharam. Se houver mais páginas para buscar, o plugin só continuará quando success for true |
message | string | Não | Uma mensagem personalizada que será exibida no lugar da mensagem padrão de êxito/falha |
show_message | bool | Não | Mostrar ou não alguma mensagem |
get_next_page | bool | Não | Se deve ou não buscar a próxima página. Se o plugin já iria buscar a próxima página de qualquer maneira, isso não fará nada. |
next_page | uint | Não | Se get_next_page estiver definido como true , a próxima página será obtida usando este número de página |
next_cursor | JObject | Não | Se get_next_page estiver definido como true , a próxima página será obtida usando este objeto cursor |
Tipo HashSet
com valor padrão de []
. Esta definição de configuração pode ser adicionada ao seu arquivo de configuração ASF.json
. Ao usar o comando loginventoryhistory
ou o endpoint da API da interface IPC InventoryHistory
, os resultados serão filtrados para mostrar apenas eventos de histórico de inventário desses AppIDs
Exemplo:
"InventoryHistoryAppFilter" : [ 730 , 570 ],
tipo uint
com valor padrão de 15
. Esta definição de configuração pode ser adicionada ao seu arquivo de configuração ASF.json
. Ao usar os comandos loginventoryhistory
ou logmarkethistory
para buscar várias páginas, será adicionado um atraso de Seconds
entre cada busca de página.
Exemplo:
"LogDataPageDelay" : 15 ,
API | Método | Parâmetros | Descrição |
---|---|---|---|
/API/BoosterManager/{botName}/BoosterData | GET | Recupera dados de reforço para determinado bot | |
/API/BoosterManager/{botName}/MarketListings | GET | Recupera dados de listagens de mercado para determinado bot | |
/API/BoosterManager/{botName}/MarketHistory | GET | page | Recupera dados históricos de mercado para determinado bot |
/API/BoosterManager/{botName}/InventoryHistory | GET | startTime , timeFrac , s | Recupera dados do histórico de inventário para determinado bot |
/API/BoosterManager/{botName}/GetBadgeInfo/{appID} | GET | border | Recupera informações do emblema para determinado bot |
/API/BoosterManager/{botNames}/GetPriceHistory/{appID}/{hashName} | GET | Recupera histórico de preços para itens de mercado 1 |
As respostas não dependem da conta usada para fazer essas solicitações. Você pode fornecer vários botNames
e o primeiro bot disponível será usado para fazer a solicitação. ↩