Monad Software
Введение
Многие уже знают, что у Monad планируется токен. Поэтому нужно хорошо проработать данный проект.
Гайд по активностям в самой сети
Алгоритм действий такой:
- Получение тестовых токенов в официальном кране.
- Кран дает токенов на пару транзакций. Поэтому находим тестовый ETH Sepolia и бриджим его через Orbiter в Monad. Далее свапаем весь ETH в MON на Ambient. Теперь у нас много тестовых токенов MON :)
- После получения достаточного количества токенов MON наша цель как можно больше взаимодействовать с различными платформами в экосистеме Monad
Функционал софта
0. Проверка балансов во всех сетях
Base, Optimism, Ethereum, ArbitrumOne, Scroll, Sepolia, Monad, Sahara
1. Получение тестовых токенов с официального крана.
Можно настроить зацикленную работу софта на получение токенов. Например: получать токены на аккаунты раз в 12-15 часов
2. Бридж ETH из Sepolia в Monad. Дальнейший свап ETH в MON
Для большого количества MON
3. Swap во все возможные токены и обратно на:
- Ambient
- Izumi
- Bean
- Octo
4. Stake MON на платформах:
- Apriori
- Magma
- Kinstu
- Shmonad
Вставляете контракты нфт в конфиге и софт будет минтить их
6. Deploy Smartcontract (Чтобы отличаться от толпы)
8. Автоматизированная игра Shmonad Game.
Идеально подойдет для набивания количества транзакций
10. Анстейкнуть все возможные позиции
11. Режим Рандом. Делает случайно какое то действие из списка, настроенного в конфиге
12. Автоматизированная игра Monad Pizza Game.
Идеально подойдет для набивания количества транзакций
Софт работает асинхронно, многопоточно с возможностью гибких настроек в конфиге
Гайд по запуску софта начинается здесь
В данной статье я хочу с самого нуля показать как запускать софт на Python.
Шаг 1
- Заходим на официальный сайт и скачиваем нужную нам версию Python, у меня 3.10.10;
Шаг 2
Шаг 3
- Скачиваем Visual Studio Code - приложение для запуска кода. После скачивания запускаем и видим такое окно.
- После скачиваем Python расширение для сборки кода.
- Открываем в левом меню последнюю иконку.
- Вбиваем в поиск "python". И скачиваем первое расширение
Шаг 4
Установка всех зависимостей для работы софта
- Скачиваете архив и добавляете в редактор кода
cd "путь к папке с софтом"
- В консоли прописываете команды
python -m venv venv
./venv/Scripts/activate # Windows
source venv/bin/activate # Unix/MacOS
4. Устанавливаете зависимости pip install -r requirements.txt
addresses.txt
Пока устанавливается расширение займемся настройкой скрипта
Для начала нужно вставить приватные ключи в файл addresses.txt
Ваши приватные ключи никуда не отправляются. Они находятся только на Вашем ПК!
Приватные ключи берутся в кошельке:
Реквизиты счета -> Показать приватный ключ -> Вводим пароль -> Копируем ключ
ОЧЕНЬ ВАЖНО ПРАВИЛЬНО ВСТАВИТЬ ПРИВАТНЫЕ КЛЮЧИ!!
Перед тем, как вставить ТО, что вы скопировали из Метамаска, нужно добавить "0x", а после этого уже вставляете ТО, что копировали
proxies.txt
username:password@ip:port
domains.txt
Для минта доменов на Nad Name нужно вставить в этот файл домены
config.py
Файл настроек имеет название "config.py"
NETWORK
- можно узнать баланс в этих сетях → Base, Optimism, Ethereum, ArbitrumOne, Scroll, Sepolia, Monad, Sahara
RPC
- ссылки на рпс в каждой сети, если рпс не работает и выбиваются соответствующие ошибки, то их можно заменить
BROWSER_PAUSE_MULTIPLIER
- мультипликатор задержки во время крана, по умолчанию стоит 2, если начинаются ошибки можно увеличить
HEADLESS
- True браузер будет скрыт во время крана, False браузер будет виден(не рекомендуется ставить False)
MODULES
- список модулей, которые будут работать при запуске командой python main.py random
, можете убирать/добавлять модули по вашему предпочтению
MONAD_MIN_MON_BALANCE
- минимальный баланс MON для того чтобы начал работать скрипт с текущим акком, если будет меньше он его скипнет
MONAD_SWAP_DAPPS
- список модулей, которые будут работать при запуске командой python main.py swap
, можете убирать/добавлять модули по вашему предпочтению
MONAD_STAKE_DAPPS
- список модулей, которые будут работать при запуске командой python main.py staking
, можете убирать/добавлять модули по вашему предпочтению
ATTEMPTS_NUMBER_RESTORE
- количество попыток при ошибке
THREADS
- количество потоков, параллельной работы кошельков
SHUFFLE
- перемешивать ли кошельки, указывать True или False
SHUFFLE_DOMAINS
- перемешивать ли домены в файле, указывать True или False
RANGE_DELAY_BETWEEN_THREADS
- диапазон времени задержки между потоками
RANGE_DELAY_BETWEEN_TX
- диапазон времени задержки между транзакциями внутри потока
RANGE_DELAY_BETWEEN_ATTEMPTS
- диапазон времени задержки между попытками при ошибке
RANGE_DELAY_BETWEEN_CLAIM_FAUCETS
- диапазон времени задержки между повторном запуске активности на кране при запуске команды python main.py infinity_faucet
ETH_SEPOLIA_MIN_BALANCE
- минимальный допустимый баланс в сеполии при бридже с сеполии в монад при запуске команды python main.py orbiter_bridge
RANGE_DELAY_BETWEEN_BRIDGE_AND_SWAP
- диапазон времени задержки между бриджом и свапом при запуске команды python main.py orbiter_bridge
RANGE_AMOUNT_BRIDGE_SEPOLIA
- диапазон обьема ETH для бриджа с сеполии в монад при запуске команды python main.py orbiter_bridge
RANGE_AMOUNT_STAKE
- диапазон обьема MON для стейка при запуске команды python main.py staking
RANGE_AMOUNT_SWAP
- диапазон обьема MON для свапов при запуске команды python main.py swap
В этих командах есть 2 варианта как можно указать обьем:
- [0.01, 0.02] - диапазон обьемов токенов MON при свапах(в примере от 0.01 MON/ETH до 0.02 MON/ETH)
- ['10', '15'] - диапазон процента токенов при свапах(в примере 10-15 процентов)
COUNT_TX
- дипазон транзакций при запуске активностей
API_KEY_CAPSOLVER
- при кране обязательно надо вставить апи ключ с CAPSOLVER сервиса
CONTRACTS_MADGIC_EDEN
- можно вставить любой смарт-контракт бесплатной нфт, вставлять надо как в примере, можно как добавлять так и убирать смарт-контракт нфт
START_DELAY_SHMONAD_GAME
- диапазон задержки времени перед запуском каждого потока при команде python main.py shmonad_game
RANGE_DELAY_BETWEEN_SHMONAD_GAME
- диапазон задержки времени между транзакциями при команде python main.py shmonad_game
COUNT_OF_GAME
- диапазон количества транзакций при запуске команды python main.py shmonad_game
Весь диапазон по времени указывается в секундах
Команды для запуска
`python main.py balance` : Проверка баланса `python main.py faucet` : Официаьлный кран, один прогон `python main.py infinity_faucet` : Официальный кран, бесконечный прогон с задержкой которую выставите в конфиге `python main.py orbiter_bridge` : Бридж с Sepolia(ETH)->Monad(ETH) и свап с Monad(ETH)->Monad(MON) `python main.py random` : Рандомный модуль из списка 'Swap' | 'Staking' | 'Mint' | 'Domain' | 'Smartcontract' (можно редактировать в конфиге) `python main.py swap` : Только свап на свапалках из списка 'Ambient' | 'Izumi' | 'Bean' (можно редактировать в конфиге) `python main.py staking` : Стейкинг в платформах из списка 'Apriori' | 'Kintsu' | 'Magma' (можно редактировать в конфиге) `python main.py mint` : Минт нфт на MadgicEden `python main.py domain` : Минт домена на Nad (надо вписать домены в domains.txt) `python main.py deploy_smartcontract` : Деплой смарт-контракта на Owlto `python main.py shmonad_game` : сыграть в игру Shmonad Game `python main.py unstake_all` : Анстейк все MON `python main.py swap_all_tokens` : Свапнуть все токены в MON `python main.py pizza_game` : Игра Pizza game
Распространенные ошибки
Если видите такую ошибку, то значит время минта бесплатной нфт закончился
Если видите такую ошибку, то значит проблема с rpc монада, надо просто ждать пока нагрузка на сеть упадет или просто ставить больше попыток при ошибке в настройке ATTEMPTS_NUMBER_RESTORE