May 20, 2022

Гайд по минту NFT через контракт

В данной статье я планирую рассказать, как минтить NFT сейлы через их контракт. Также, постраюсь рассказать о нюансах, которые есть в этом способе.

Глава 1 | Почему стоит минтить через контракт

Очень часто, когда проходит какой-то популярный минт или вы увидели интересный минт в icy tools или moby, сайт сейла лежит или открывается долго из-за этого вы теряете секунды и не успеваете заминтить ваши нфт.

Чтобы такого не случалось и вы всегда смогли заминтить, нужно минтить через контракт сейла, так как etherscan никогда почти не ляжет в отличие от обычного сайта + минт там проходит быстрее.

Глава 2 | Как минтить через контракт

Шаг 1

Для начала нам нужно найти контракт сейла, который мы хотим минтить. Обычно разработчики сами его постят у себя в социальных сетях (discord/twitter), если они его не запостили, то контракт также можно найти через opensea, я подробно описал, как это сделать в гайде "Работа с газ-калькулятором". Если вы нашли сейл через icy/moby, то там всегда пишется контракт, вне зависимости какая у вас версия, платная или бесплатная.

Шаг 2

После того как мы узнали нужный нам контракт, нам нужно найти цену NFT и также максимальное количество, которое мы можем заминтить за одну транзакцию.

Для данного гайда я приведу в пример сейл Star Wolvez

Цена: 0.0888 eth

Максимум за транзакцию: 3 per tx

Теперь когда мы знаем нужные значения, мы переходим на контракт данного сейла.

Контракт Star Wolvez - ссылка

Шаг 3

Когда мы перешли на контракт, наш встречает следующее окно. Нам нужно перейти во вкладку "Сontract"

После перехода нажимаем "write contract"

Далее мы ищем вкладку, которая имеет название на подобии "public mint", "mint", "public", название зависит от выбора разработчика, но все они +/- похожи. Также, не забывайте подключить ваш metamask, иначе вообще не сможете отправить транзакцию. Чтобы это сделать, нажмите "Connect to Web3"

На фото сверху мы видим, что функция называется "mint", нажимаем на неё, у нас развёртывается окно.

Шаг 3

Как мы нажили, мы видим следующее окно

payableAmount(ether) - это количество eth, которое вы потратите для минта nft. Можно писать в формате 0.кол-во eth или просто .кол-во eth, никакой разницы нет. Так как мы минтим 3 nft, то мы вписываем .2664 eth (0.0888 * 3 = .2664)

numberOfTokens(unit256) - это количество nft, которое вы планируете купить. Сюда просто вставляте обычное число, в нашем случае просто пишем 3.

Когда мы ввели данные числа, нажимаем кнопку "Write". Если вы всё правильно ввели, то у вас высветится окно метамаска. Если окно не появляется, значит что вы где-то допустили ошибку.

Шаг 4

Если вы нажали "write" и метамаск вам пишет высокий газ, значит что сейл ещё не запустился. Снизу показан пример.

Если вы видите, что метамаск вам пишет адекватный газ ~50-200$, значит сейл уже начинался и можно минтить. После того как ваша транзакция завершится, нфт появятся в вашем opensea. На этом всё, далее я разберу нюансы.

Глава 3 | Нюансы

К сожалению не все сейлы можно минтить через контракт, из-за большего количества ботов, разработчики начали добавлять защиту в свои контракты - сигнатуры.

Снизу пример контракта с сигнатурой от Cool pets

Если вы видите доп значения, значит скорее всего вы не сможете заминтить через контракт, если вы конечно не кодер 👀

Глава 4 | Финал

Как мы видим, если разобраться, то минтить через контракт довольно просто, если вы всё правильно делайте.