гайды
July 9, 2023

Scroll Alpha Testnet

Всем привет!

В этой статье мы подробно разберем активность в проекте Scroll, который создан для масштабирования сети Ethereum.

Главные цели проекта - быстрые транкзации и высокая безопасность.

В Scroll привлечено уже 80 млн $ от таких крупных фондов как Polychain Capital, Bain Capital Crypto, Robot Ventures, Geometry DAO и т.д.

А ожидаемая оценка проекта на листинге будет в 10 раз больше - 800 млн $!

Обычно, 5% своих токенов проекты раздают своему комьюнити, а в нашем случае - это 40 млн$. Как вам такое?)

Но получат дроп лишь те, кто проделает простые активности в сети Scroll Alpha Testnet.

К слову, на twitter проекта подписан Виталик Бутерин (основатель Ethereum), я думаю, что это хороший знак и не следует скипать эту активность!

Вот несколько особенностей активностей в проекте Scroll:

  1. Нам не потребуются финансовые вложения, так как мы будем использовать тестовые токены.
  2. Мы приобретем навык разворачивания смарт-контрактов, что значительно увеличит наши возможности для получения дропа.
  3. Мы также создадим свои собственные токены и обменяем их на Эфир.

Поехали!:)

1. ТЕСТИРУЕМ МОСТ

  • Добавляем тестовые сети Goerli Testnet и Scroll Alpha Testnet
Если сеть Scroll Alfa Testnet не добавляется, то ее следует добавить вручную через Chainlist.
  • Покупаем тестовые токены в количестве 1 Goerli ETH
  • Открываем вкладку Bridge
  • Официальный мост Scroll готов для использования
  • На данном этапе нам необходимо сделать несколько переводов между сетями Goerli Testnet и Scroll Alpha Testnet туда и обратно.

К сожалению, транзакции идут медленно, поэтому необходимо запастись терпением :)

Также необходимо отправить небольшое количество ETH на другой кошелек в Метамаске в сети Scroll Alpha Testnet. Можно создать еще один аккаунт прямо в кошельке и отправить на новый адрес.

  • После того, как мы провели все транзакции, нам необходимо прокликать новые появившиеся вкладки на странице, создавая видимую активность.
  • Оставляем немного на комиссию (газ) и переводим оставшиеся ETH в сеть Scroll Alpha Testnet.

Далее необходимо в Метамаске переключиться на сеть Scroll Alpha Testnet - она нам понадобится для дальнейшей работы.

2. РАЗВОРАЧИВАЕМ СМАРТ-КОНТРАКТ

  • Переходим на сайт разработки смарт-контрактов на Ethereum - https://remix.ethereum.org
  • открываем папку Contracts
  • создаем в ней новый файл с названием EtherWallet.sol
  • В созданном нами файле вставляем код, представленный в официальном гайде от Scroll:

// SPDX-License-Identifier: UNLICENSED pragma solidity ^0.8.9;

contract Lock { uint public unlockTime; address payable public owner;

event Withdrawal (uint amount, uint when);

constructor (uint _unlockTime) payable { require ( block.timestamp < _unlockTime, «Unlock time should be in the future» );

unlockTime = _unlockTime; owner = payable (msg.sender); }

function withdraw () public { require (block.timestamp ≥ unlockTime, «You can’t withdraw yet»); require (msg.sender == owner, «You aren’t the owner»);

emit Withdrawal (address (this).balance, block.timestamp);

owner.transfer (address (this).balance); } }

  • открываем вкладку Solidity Compiler
  • выбираем версию 0.8.18
  • нажимаем Compile.

Если появилась зеленая галочка✅, значит компиляция прошла успешно.

  • Далее необходимо проверить, чтобы в метамаске стояла сеть Scroll Alpha Testnet.
  • Открываем вкладку Deploy and run transaction и в пункте Environment ставим Injected Provider – Metamask, и подключаем наш Метамаск.
  • Далее указываем все значения как на скриншоте ниже.
  • В красное окно вписываем число: 1696118400
  • Далее нажимаем Deploy и подтверждаем транзакцию в Метамаске в сети Scroll Alpha Testnet.

Внизу появилась еще одна зеленая галочка✅, это значит, что всё прошло успешно.

  • теперь нам нужно верифицировать и опубликовать наш контракт.

Для этого заходим в Метамаск и в Активностях находим нужный нам контракт и входим в него.

Смотреть в проводнике блоков

Переходим в контракт, нажимаем Code, потом Verify and Publish и кнопку Next

  • Внимательно заполняем данные и вставляем наш код контракта, если он автоматически не вставился.
  • Затем нажимаем Verify and Publish

На вкладке Code через некоторое время появится галочка.

Поздравляю, официальный смарт-контракт Scroll опубликован!

3. СОЗДАЕМ СВОИ ТОКЕНЫ

  • Переходим назад на https://remix.ethereum.org
  • создаем в папке Contracts еще один файл и назовем его Scroll.sol

Копируем код:

// SPDX-License-Identifier: MIT // WTF Solidity by 0xAA

pragma solidity ^0.8.4;

interface IERC20 {

event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address to, uint256 amount) external returns (bool); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom( address from, address to, uint256 amount ) external returns (bool); }

contract ERC20 is IERC20 {

mapping(address => uint256) public override balanceOf; mapping(address => mapping(address => uint256)) public override allowance; uint256 public override totalSupply;

string public name; string public symbol;

uint8 public decimals = 18; address public owner;

constructor(string memory name_, string memory symbol_){ name = name_; symbol = symbol_; owner = msg.sender; }

function transfer(address recipient, uint amount) external override returns (bool) { balanceOf[msg.sender] -= amount; balanceOf[recipient] += amount; emit Transfer(msg.sender, recipient, amount); return true; }

function approve(address spender, uint amount) external override returns (bool) { allowance[msg.sender][spender] = amount; emit Approval(msg.sender, spender, amount); return true; }

function transferFrom( address sender, address recipient, uint amount ) external override returns (bool) { allowance[sender][msg.sender] -= amount; balanceOf[sender] -= amount; balanceOf[recipient] += amount; emit Transfer(sender, recipient, amount); return true; }

function mint(uint amount) external { require(owner == msg.sender); balanceOf[msg.sender] += amount; totalSupply += amount; emit Transfer(address(0), msg.sender, amount); }

function burn(uint amount) external { balanceOf[msg.sender] -= amount; totalSupply -= amount; emit Transfer(msg.sender, address(0), amount); }

}

  • вставляем в наш новый файл
  • открываем вкладку Solidity Compiler, выбираем версию 0.8.18 и нажимаем Compile.
  • открываем вкладку Deploy and run transaction.
  • В пункте Environment ставим Injected Provider – Metamask и подключаем наш Метамаск.
  • нажимаем:
  • Вводим значения:

в окне NAME - mytoken

в окне SYMBOL - mytok

  • Проверяем наш метамаск, там должна стоять сеть Scroll Alpha Testnet.
  • Нажимаем transact.
  • Подтверждаем транзакцию в Метамаске и получаем очередную зеленую галочку!✅
  • Разворачиваем наш контракт в Deployed Contracts.
  • Указываем количество токенов для минта.
  • Копируем и вставляем это число: 18000000000000000000000000
  • Копируем адрес контракта

4. ЗАНЕСЁМ ЛИКВИДНОСТЬ В ПУЛ

  • Открываем Uniswap Scroll и нажимаем Pool, затем New Position и Select a token.

Теперь нам необходимо создать пул ликвидности ETH - mytoken.

  • Для этого вставляем скопированный контракт в окно и выбираем появившийся mytoken
  • На примере ниже показано, в какой последовательности необходимо нажимать кнопки и какие значения вводить. Обращаю внимание на то, что самое нижнее число может немного отличаться, в зависимости от вашего изначального баланса.
  • Далее нажимаем Approve mytok и подтверждаем в Метамаске.
  • Нажимаем Preview и нажимаем ADD
  • Подтверждаем транзакцию в Метамаске и создаем наш пул
  • Проверяем, что наш пул создан, и указана позиция in range
  • Идем в Swap и свапаем в обе стороны. Сначала поменяем ETH на наш токен
  • И наоборот: обменяем наш токен на ETH. Но сначала одобрим использование нашего токена в Метамаске
  • А теперь свапнем на ETH, подтвердив транзакцию в Метамаске

Поздравляю, всё получилось!

  • А сейчас вернем часть нашей ликвидности. Для этого проваливаемся в наш пул и нажимаем Remove Liquidity
  • Выбираем 75% и нажимаем Remove. Затем подтверждаем транзакцию в Метамаске.

Подведем итоги:

У нас получилось успешно создать контракт, свой собственный токен, пул ликвидности и активно посвапать:)

5. ИГРОВЫЕ АКТИВНОСТИ

Это несложные активности, в которых необходимо поиграть, заминтить NFT, подключить Метамаск в сети Scroll Alpha Testnet, просто понажимать на кнопки.

Но будьте готовы к тому, что тестовая сеть не всегда будет работать стабильно, стоит проявить немного терпения :)

https://scroll-guardians.vercel.app/

Тут минтим NFT

  • Scroll-237

https://scroll-237a2.web.app/

Тут тоже минтим NFT

  • Bufficorn Battle

https://bufficorn-battle.vercel.app/

Аналогично минтим NFT

  • Крестики Нолики

https://onchain-tictactoe.vercel.app/

6.СОЦИАЛЬНЫЕ АКТИВНОСТИ

Не забываем, что проекты любят, когда мы подписываемся на их социальные сети и активно отмечаемся в них! Пишите посты и твиты в поддержку проекта, пилите мемы и креативные видео, одним словом - продвигайте проект всеми своими силами :))

7. ПРОВЕРЯЕМ СВОИ ТРАНЗАКЦИИ

  • Открываем сканер блокчейна Scroll https://blockscout.scroll.io
  • В строку поиска вводим адрес нашего кошелька Метамаск и проверяем количество транзакций

❗️Важно отметить, что количество транзакций должно быть больше 25 шт! Если у нас их меньше как на скриншоте, значит идем на Uniswap и набиваем нужное количество транзакций.

❗️❗️Также важно не забывать и делать по несколько транзакций раз в две недели, чтобы поддерживать активность в проекте.

Успехов!:)