Гайд для софта ZKSYNC / AutoSoft
Пишите в чат или тех поддержку @autosoft_tech по всем вопросам.
Ответы на часто задаваемые вопросы и решение ошибок вы можете найти в чате по поиску.
Софт поддерживает macOS, для перехода напишите в тех. поддержку: @autosoft_tech
Гайд как накатить сервер и поставить защиту на него.
Как только как вы взяли ключ c файла get_key.exe, нажимаете кнопку "change token" в боте @takesoft_bot и прописываете свой ключ, вам бот выдаст файлы zksync_data.rar и ZkSync by AutoSoft v1.5.exe (я беру в пример ZkSync)
Все дальнейшие рассылки и файлы для обновлений будут приходить в бота @takesoft_bot.
Создайте отдельную папку и разархивируйте содержимое файла (папку data и exe файл в одну папку).
Также важно переименовать папку ZkSync_data в просто data, иначе софт не будет работать, вот как должно выглядеть всё на выходе:
Напомню, что при последующих обновлениях с бота TakeSoft может потребоваться обновлять папку abi или файл-настроек settings.json
Все настройки находятся в папке data:
Начнём с шифровки приватников (без этого софт не будет работать):
Идём сразу в папку data, ищем текстовик to_encrypted_secrets.txt пишем туда приватники, с которыми будем работать. Мы будем их шифровать один раз и в дальнейшем, софту не нужны будут приватники, только адреса.
Дальше запускаем файл, листаем в самый низ и выбираем таск "encrypt_secret_keys".
Выбираем, через что сможем декодировать приватники (запускать софт) - через флешку - пишем 1 или через пароль - 2 (как сделал я).
Если не хотите через флэшку-можно сделать по паролю (его нужно будет вводить каждый раз когда запускаете софт).
Внимание! Когда пишите пароль, он невидимый, поэтому советую сначала где-то написать его, скопировать и вставить в терминал. Пароль не теряйте.
Если у вас не получилось, то софт сам напишет пароль — если первые 3 буквы правильные - пишите Y, если нет, то N и ещё раз пароль.
Приватники готовы для работы, дальше идём в папку data, в текстовике to_run_addresses.txt пишем адреса от приватников для работы с ними.
Внимание! Файл с приватниками сам удаляется to_encrypted_secrets.txt, так что сохраняйте к себе и храните в надёжном месте.
Делается это 1 раз для всех приватников, потом сохранили зашифрованный файлик, прописывали пароль и все пашет. Удобней же писать адреса которые нужно запустить и гораздо безопасней, не так ли?
Подготовку закончили, теперь начинаем работу.
Закидывайте ETH в сетях Arbitrum/Polygon/BSC, дальше выбираете 1 модуль для бриджа. После этого для полного прогона пишите 10 модуль и вуаля, аккаунт ч обычными настройками прогонен.
Если у вас аккаунт с нашего софта L0 и у вас в других сетях ETH или котлета лежит в USDT/USDC, то используйте 2 модуль. Софт ищет стейблы/ETH в других сетях для того чтобы забриджить сначала в Arbitrum/Polygon/BSC, дальше перевести стейбл в ETH и забриджить в ZkSync.
Вы также можете раскинуть в сеть ZkSync Era через OKX без бриджа и запустить сразу FULL модуль.
Settings.json - полная настройка софта.
Начнем по порядку, файл открывать можно в любом текстовом редакторе.
Я советую скачать Notepad++.
Разбор параметров:
LoaderDisk - Если вы шифровали данные через флэшку, то указываете букву диска который использовался в качестве ключа для шифрования (точнее серийный номер флэшки). По дефолту, шифруете через пароль - то ничего не надо делать.
DecryptType - тут есть 2 варианта: Flash | Password
Cами выбираем, через что шифровали.
По дефолту стоит шифрование через пароль.
TaskNumber - теперь он не нужен, все таски выбираем стрелками. О всех модулях работы ниже
UseProxies - отдельное оглавление про прокси ниже
MaxEthGwei - чекер перед отправкой транзы по газу в эфире
LiteTasks - работа в сети Lite, 2 режима: "claimNFT", "sendTx"
Клейм NFT и отправка транзакций на lite.zksync.io самому себе копеек, для набива транз
NFTcontracts - адреса ЛЮБЫХ нфт коллекций. Брать ТОЛЬКО из сети эфира
AlchemyRPC - для минтов нфт понадобится эфир нода из Alchemy
LiteWithdrawSave - кол-во эфира сколько софт оставит в лайте. ВНИМАНИЕ, прописывайте минимум 3-5$, т.к, вывод только через оф.мост, у него нормальная комса на вывод
Slippage - какой слип в ZKSYNC ERA на дексах при свапах (сколько максимум готовы потерять, если нет ликвы)
ВНИМАНИЕ, ставить слишком большое проскальзывание - опасно. Если поставите число 0.1 (то это 90% проскальзывания). При такой сделке - вам может прийти на 90% меньше токенов чем вы свапали.
MinEthValue - Минимальная сумма которую софт может забриджить. Внимание, на Orbiter есть минималки, мониторьте на сайте.
SaveOnWallet - мин/макс сумма в ETH который софт будет оставлять при бридже эфира через arbitrum/eth
BridgeType - принимает параметры: orbiter/zkbridge (или сразу оба, тогда будет брать рандомно. Так если что везде где несколько вариантов)
USDAmountToSwap - Тут можно указать мин/макс сумму сколько забриджить (в $). Работает если запускаете второй таск. Если указываете больше баланса - то свапает и бриджит все что на балике.
WithdrawSaving - мин/макс сумма в eth которую софт будет оставлять в zkSync после вывода
DistChain(only for orbiter) - список чейнов куда софт может отправить транзакцию при выводе через orbiter
ParsingSleep - принимает кол-во в секундах. Это задержка между чеком баланса в потоке (маленькие значения не рекомендуем ставить)
minUSDamount - только для бриджей. Ставьте +- те значения что раскидываете на кошелек чтобы софт не цеплялся за копейки
toSaveFunds - принимает значения: WETH/USDC, эта та валюта, в которой софт будет переводить весь остаточный баланс после завершения потока (FULL mode)
SwapAmounts - кол-во свапов на дексах
ToSaveEthOnBalance - мин/макс значение в $, которое софт будет оставлять на балансе (ETH)
WorkPercent - Множитель, мин/макс, с которым будет работать софт. Если вы выставляете 0.5 , 0.7, то при свапе, софт будет брать 50-70% от баланса
Supported_tokens - Доступные токены для свапа. Пока только USDC
MINIMAL_SWAP_AMOUNTS - Тут вы выставляете минимальный своп в $ для токенов (не ETH)
TxCoeff - множитель, на который софт будет занижать газ при отправке в Zksync. Слишком большой не рекомендую ставить, могут быть фейлы. Рабочий оставляем в пределах 1,5-2
TxCoeffApprove - отдельный множитель для аппрувов (занижать максимум на 1,5)
OrbiterNets - Какие чейны будут использоваться для бриджа в зксинк. Если деньги находятся в другом чейне - софт сделает бридж через старгейт
MinEthBridge - минимальная сумма в ETH который софт будет бриджить в зксинк
LiqWorkPercent - такой же множитель как и WorkPercent, только для залива ликвидности
LiqDEXs - название дексов для залива ликвидности. Из доступных: space/mute/sync
RemoveOnFullMode - значение true/false. Если выпадает true, то софт выводит из всех пулов (таск 10)
AddLiqAmount - кол-во раз, сколько софт закинет деньги в ликвидность
Lendings - список лендингов, рандомно в которые софт будет заливать ликвидность
AddLendsAmount - кол-во раз, сколько софт закинет деньги в лендинги
RemoveOnFullMode(Lends) - принимает значение true/false. Если true - то выводит все деньги из лендингов по завершению работы (таск 10)
setUsername - принимает значение true/false. Если true - то будет устанавливать заминченный юзернейм как основной
TaskSleep - мин/макс время в секундах между выполнением N действия
Модули для работы софта.
TaskNumber - ТЕПЕРЬ НЕ НУЖЕН. Выбираем модуль софта стрелками в софте консоли. OwnTasks - если включаете, то TaskNumber 0. Можно выбирать интересующие модули. Пишем в таком формате: [2, 3, 4, 5]. Ниже цифры (1) - это номер таска для OwnTasks, чтобы выбрать нужные для себя таски.
(1) Orbiter (only deposit eth/weth) - Только бридж ETH/WETH из доступных сетей (arbitrum, bsc, polygon). Для начала, скрипт проверяет все сети на наличие валюты для бриджа. Если находит значение выше: MinEthValue (настройки), то делает бридж в ZkSync.
Если у вас стейблы, запускайте 2 модуль.
(1) Orbiter with swaps and deposit to zksync - Это для тех, у кого остались стейблы с нашего софта L0. Тот же бридж эфира в ZkSync, НО, если у вас USDC/USDT/ETH не в (arbitrum, bsc, polygon), то он сделает бридж в рандомную из сетей что вы указываете в настройках в параметре: OrbiterNets. Сделает обмен денег через Sushiswap (usdt/usdc поддерживаются) и оформит бридж в ZkSync.
(7) Withdraw with Zkbridge/Orbiter - Вывод денег из ZkSync в одну из доступных сетей. Какой бридж вы хотите использовать, указывается в BridgeType ("orbiter", "zkbridge" доступны). Если вы указываете сразу несколько, то будет браться рандомный.
Выводит EtherToWithdraw сумму, если EtherToWithdraw больше баланса, то выводит весь балик - WithdrawSaving
Zkbridge - офф мост (не Polyhedra!)
Orbiter - орбитер. Для орбитра настройка: DistChain(only for orbiter) - сюда вписываете сеть (любую) куда депать хотите
Доступные: ethereum optimism bsc arbitrum nova polygon polygon_zkevm zksync zksync_lite
(8) Bridge from ethereum to zksync - Депозит денег из Эфириум сети в ZkSync через оффициальный мост.
(3) Swaps handler on 1inch and Odos - Делает свапы рандомно на 1inch/odos (в приоритете inch т.к. одос дорогой), основывается на токены из списка: tokensForSpecSwaps + соблюдает минималки из: MINIMAL_SWAP_AMOUNTS
Делает N кол-во свопов согласно SwapAmounts, всегда резервируя баланс эфира на комиссии из: ToSaveEthOnBalance
Доступные токены "tokensForSpecSwaps": ["BUSD", "USD", "USDT", "WBTC", "MUTE", "VC", "SPACE", "SLUSDT"], выбирайте на свой страх и риск!
(4) Swap funds from WETH->USDC - Только перекид баланса из ETH в USDC на рандомном дексе на всю сумму - ToSaveEthOnBalance.
(14) Swap USDC->WETH - Свап всех стейблов в ETH
(10) Full mode - Это FULL модуль в который включены ВСЕ остальные модули (кроме Моста). На данный момент это: Рандомные свапы, free mint NFT (домен), добавление ликвидности, добавление ликвидности в лэндинг протоколы) + если у вас указаны параметры true в настройках: RemoveOnFullMode (ликвидность), RemoveOnFullMode(Lends), то в конце работы он выведет все деньги из лендингов и пулов ликвидности. И еще, вы можете указать в какой валюте вы хотите сохранять деньги после завершения работы: toSaveFunds, я ставлю в USDC.
(5) Add liquidity - Добавление ликвидности на рандомных дексах. Кол-во итераций указывается в: AddLiqAmount. А еще тут важны параметры: LiqWorkPercent, ToSaveEthOnBalance.
(6) Remove liquidity - Выводит ликвидность со всех дексов (для лэндингов есть 13 модуль)
(12) Lending handler - Депозит в лендинг протоколы. Кол-во итераций указывается в: AddLendsAmount. Нужные вам лендинги указываются в: Lendings, есть два: ["react", "era"]
(13) Withdraw from lendings - Вывод со всех лендингов. Минималка +-: 0.0001
(16) Activity in Zksync Lite - Активность в Lite. Делает транзы согласно: LiteTasks
Если указываете "LiteTasks": ["sendTx", "claimNFT"], то сделает 1 транзу самому себе + 1 минт нфт.
ОБЯЗАТЕЛЬНО! ОБЯЗАТЕЛЬНО! ОБЯЗАТЕЛЬНО! НУЖНО УКАЗАТЬ AlchemyRPC (https://www.alchemy.com/) нужно взять именно оттуда и именно ЭФИР НОДУ
Для минта нфт нужно еще указать адреса контрактов в NFTcontracts. Берем их из эфир сети. https://etherscan.io/nft-top-contracts (не все подойдут)
(17) Withdraw from Zksync Lite - Вывод из Lite в ETH.
Бриджит весь баланс - LiteWithdrawSave
Тут осторожно, частто высокие комиссии в лайте. Указывайте LiteWithdrawSave с учетом комиссий на вывод, софт не учитывает ее!
(18) Deposit to Zksync Lite - Офф бридж из эфир сети в Lite. Бриджит весь баланс - SaveOnWallet
(22) ZigZag - Использует значения из: SwapAmounts, toSaveEthOnBalance, WorkPercent
С мелкими суммами может кидать ошибки
toSaveEthOnBalance ставьте на минимум до доллара, процент побольше (с большими балансами так же осторожно, там почти нет ликвидности!!!!!!!!)
(19) Send tx with Dmail - ориентируется на dmailTxAmount. Отправка писем через DMAIL
(20) P2P transfers - Создает новый кошелек, сохраняя приватник и адрес в папке data, отправляет туда трансфер согласно WorkPercent, немного ждет и перекидывает обратно баланс весь
(9) Mint NFT Nickname - Минт бесплатной NFT, создание никнейма (5 рандомных символов + 1-3 рандомные цифры) и установка никнейма на кошелек.
(78) Mint NFT на Tavaera - бридж через L0 через контракт (в нём 150к минтов)
(79) CryptoMaze NFT Mint - Минт нфт на CryptoMaze
(80) Mint и Bridge NFT через контракт - Минт + бридж через L0 через контракт (на нём 150к минтов)
Get stats on ZkSyncLite - Получение статистики по ZkSync Lite
Прокси
Чтобы установить прокси, необходимо найти файл в data/proxies.txt
И четко по списку выставить прокси в формате: login:pass@ip:port@address (кошелька). К примеру:
autosoft_eth:[email protected]:30010@0x852C9f7656124BA5f006a6510caa13d2f55Cac58
Прокси обязательно должны быть формата http, socks не подойдут
И чтобы данные настройки учитывались, нужно поставить в settings.json параметр useProxies на true.
Ноды (RPC)
Может быть такое, что ноду рейтлимитнет за спам большим кол-вом акков, для этого можете поставить другие паблик/приват ноды, попробуйте найти здесь: chainlist.org.
RPC Settings - это ноды сетей которые софт будет использовать в работе, можно указывать любое кол-во нод (формат есть в настройках и на скрине). Если не знаете какие ноды хорошие/не очень то не трогайте данную настройку.
Max Gwei Settings - Максимальное значение гвей для отправки любой транзакции в заданной сети.
Свои ноды вы можете написать чуть ниже в поле RPC, и соответственно в "UserOurRpc" пишем false для своих нод.
И если у вас UseOurRpc: true, но на каких-то чейнах стоит false, то софт будет брать ваши ноды как вы обычно устанавливаете
Работа софта сильно зависит от выбранных нод
Если очень просто объяснять - нода проводник нас в мир блокчейна, и именно нода первая обрабатывает наши транзакции/запросы к блокчейну. И важно чтобы нода работала корректно
Не советую брать ноды с Chainlist (если вы не знаете какие точно нормальные). Там 50% всех нод работают не всегда корректно/временами падают/работают медленно. И поэтому, лучше всего брать ноды с Infura или ANKR ! Внимание, на infura и ANKR есть лимиты на запросы: INFURA: 100k/req в день (маловато) ANKR: 30 req/секунду (2,4кк/день)
Чтобы получить ноду на ANKR нужно зайти по ссылке: https://www.ankr.com/rpc/
Комиссии
Max L0 Fees Settings - Здесь указывается максимальное значение в нативной валюте при котором софт будет делать бридж. Если в моменте отправки транзакции комиссия будет выше - софт будет ждать пока комиссия упадет. (при проверки комиссий софт проверяет на изменения файл settings.py).
CheckBeforeBridge - принимает значения true/false. При True - перед отправкой в N сеть софт будет проверять данную сеть на наличие нативной валюты для оплаты след бриджа.
Для корректной работы - требуется выставлять адекватное кол-во комиссий / gwei в сетях + раскидывать достаточное кол-во денег на оплату комиссий во все сети. Я обычно раскидываю по 4-5$ в каждую из сетей для комфортной работы. Но опять же - все зависит от кол-во бриджей.
Пишите в тех поддержку @autosoft_tech по всем вопросам.
Ответы на часто задаваемые вопросы и решение ошибок вы можете найти в чате по поиску.