Scroll. Testnet
Обновление 13.06.2023:
🔻🔻🔻
https://layer3.xyz/quests/aave-on-scroll
Обновление 12.06.2023:
🔻🔻🔻
https://layer3.xyz/quests/swap-on-scroll
Обновление 02.06.2023:
Где взять тестовый ETH и как перевести его в сеть Scroll мы писали гайде ранее
Переходим к взаимодействию с Syncswap:
▪️На SyncSwap подключаем кошелек в сети Scroll Alpha
▪️Во вкладке Trade делаем различные свапы
▪️Во вкладке Pool добавляем ликвидность (на данный момент доступны пары USDC/ETH и USDT/ETH):
Выбираем Wizard ⏩ выбираем токены ⏩ Enter Pool ⏩ Deposit ⏩ вводим желаемую сумму ⏩ нажимаем Deposit
▪️Забираем ликвидность полностью или частично во вкладке Withdraw
Обновление 16.05.2023:
Выполняем активность от протокола Aave в сети Scroll.
Aave — это децентрализованная платформа займов, при помощи которой мы имеем возможность получить криптовалюту в долг. Недавно проект анонсировал поддержку тестовой сети Scroll. Для тех, кто не успел приступить к тестированию сети Scroll это прекрасная возможность нагнать активность.
Подготовка
Переходим на страницу AAVE и подключаем MetaMask:
Затем нам необходимо немного тестового эфира на комиссию. Соответственно этот шаг выполняют те, у кого нет тестового эфира в сети Scroll.
Получить тестовые токены можно через кран или купить goerli Eth за настоящий Eth в сети Arbitrum или Optimism здесь.
Шаг 1
Бриджим тестовый $ETH в сеть Scroll:
Шаг 2
Ждем минут 10-30 и после завершения перевода через мост переходим к тестированию AAVE. В верхнем правом углу выбираем Testnet mode:
В MetaMask выбираем тестовую сеть Scroll на Chainlist, а на странице Aave выбираем тестовую сеть Scroll Alpha:
Далее пробуем получить тестовые токены, кликнув на верхней панели на Faucet:
В настоящее время краны AAVE работают некорректно и, если тестовые токены не были получены, выполняйте тестнет без них.
Шаг 3
Переходим в AAVE протокол, и тестируем все доступные функции. Поскольку у нас лишь один токен, нажимаем supply и отправляем в залог часть эфира:
У нас открылась возможность забрать назад залог, а также взять различные токены в долг:
Шаг 4
Протестируем сначала функцию займа и одолжим немного токенов DAI. Нажимаем Borrow, указываем сумму займа и подписываем транзакцию:
Теперь мы можем вернуть DAI и погасить заем через кнопку Repay:
Указываем сумму, которую хотим вернуть, и подписываем две транзакции в кошельке:
Шаг 5
Аналогично тестируем другие токены. Можно погашать заем лишь частично, можно оставить заемный токен также в качестве залога. Как заработают краны, нужно протестировать функции платформы с другими токенами.
Шаг 6
В конце тестирования мы заберем свой эфир из залога (можно забрать лишь часть):
Если та же ошибка вывода эфира будет присутствовать у вас при прохождении тестнета, выведите в обернутый эфир лишь незначительную сумму, чтобы протестировать эту функцию. Когда вы вернетесь к повторению тестнета, ошибка может быть уже исправлена.
Можно пройти тестирование не со всеми токенами сразу, а периодически возвращаться и делать активность с новыми токенами.
Подписываемся на Discord проекта.
Обновление подготовлено экспертом COIN SIDE — Милой @Mila_Lab
Обновление 07.04.2023:
1. В Discord необходимо пройти верификацию в ветке #verify
!!!Установите аватарку в Discord, без нее не пустит на сервер проекта.
Переходим в Discord. Сначала нажимаем Выполнить, ставим галочку и жмем Отправить:
В ветке #verify жмем на Verify, снова на Verify, в появившемся окне жмем Ага:
Нас перекидывает на сайт, где жмем LOGIN:
Далее жмем Авторизовать, затем ставим галочку, чтобы пройти проверку:
Подробнее тут
2. В гильдии забираем mystery role. Роль могут получить только те, у кого Twitter создан до 1 октября 2022
🔻🔻🔻
https://guild.xyz/scrollzkp
Обновление 17.03.2023:
Деплоим смарт-контракт. Новая активность в Scroll.
Шаг 1
Для начала в кошельке подключаемся к сети Scroll Alpha. Только после этого приступаем к следующим действиям:
Шаг 2
Переходим на этот сайт и нажимаем Accept:
Шаг 3
Дальше в панели слева находим значок, который выделен на скриншоте. Нажимаем на него и создаем файл:
Шаг 4
После того, как нажали на значок папки, увидите поле ввода. Туда пишем название:
Шаг 5
Дальше нужно вставить этот код:
// SPDX-License-Identifier: MIT pragma solidity ^0.8.4; contract FunctionTypes{ uint256 public number = 5; constructor() payable {} // 函数类型 // function (<parameter types>) {internal|external} [pure|view|payable] [returns (<return types>)] // 默认function function add() external{ number = number + 1; } // pure: 纯纯牛马 function addPure(uint256 _number) external pure returns(uint256 new_number){ new_number = _number+1; } // view: 看客 function addView() external view returns(uint256 new_number) { new_number = number + 1; } // internal: 内部 function minus() internal { number = number - 1; } // 合约内的函数可以调用内部函数 function minusCall() external { minus(); } // payable: 递钱,能给合约支付eth的函数 function minusPayable() external payable returns(uint256 balance) { minus(); balance = address(this).balance; } }
Вставляем этот код в поле, которое посередине изначально было пустое и в появившемся сообщении жмем ОК:
Шаг 6
- Дальше нажимаем значок, который на скриншоте отмечен цифрой 1. После чего нам откроется кнопка
- Нажимаем кнопку Compile Scroll.sol
Шаг 7
- Дальше нажимаем самый последний значок
- Когда нам откроется панель, в самой первой строке жмем и выбираем MetaMask
- Подтверждаем транзакцию
После того, как выбрали MetaMask нажимаем красную кнопку Deploy и подтверждаем транзакцию:
Зеленая галочка означает, что мы сделали все правильно:
На этом мы задеплоили контракт.
Деплоим токен
Шаг 1
НЕ ЗАБЫВАЕМ БЫТЬ В СЕТИ SCROLL ALPHA
- Снова переходим сюда и прокликиваем сообщения: Next, Next, Done
- Нажимаем значок, отмеченный на скриншоте, и вписываем желаемое название токена:
Шаг 2
// SPDX-License-Identifier: MIT // WTF Solidity by 0xAA pragma solidity ^0.8.4; interface IERC20 { /** * @dev 释放条件:当 `value` 单位的货币从账户 (`from`) 转账到另一账户 (`to`)时. */ event Transfer(address indexed from, address indexed to, uint256 value); /** * @dev 释放条件:当 `value` 单位的货币从账户 (`owner`) 授权给另一账户 (`spender`)时. */ event Approval(address indexed owner, address indexed spender, uint256 value); /** * @dev 返回代币总供给. */ function totalSupply() external view returns (uint256); /** * @dev 返回账户`account`所持有的代币数. */ function balanceOf(address account) external view returns (uint256); /** * @dev 转账 `amount` 单位代币,从调用者账户到另一账户 `to`. * * 如果成功,返回 `true`. * * 释放 {Transfer} 事件. */ function transfer(address to, uint256 amount) external returns (bool); /** * @dev 返回`owner`账户授权给`spender`账户的额度,默认为0。 * * 当{approve} 或 {transferFrom} 被调用时,`allowance`会改变. */ function allowance(address owner, address spender) external view returns (uint256); /** * @dev 调用者账户给`spender`账户授权 `amount`数量代币。 * * 如果成功,返回 `true`. * * 释放 {Approval} 事件. */ function approve(address spender, uint256 amount) external returns (bool); /** * @dev 通过授权机制,从`from`账户向`to`账户转账`amount`数量代币。转账的部分会从调用者的`allowance`中扣除。 * * 如果成功,返回 `true`. * * 释放 {Transfer} 事件. */ 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; // @dev 在合约部署的时候实现合约名称和符号 constructor(string memory name_, string memory symbol_){ name = name_; symbol = symbol_; owner = msg.sender; } // @dev 实现`transfer`函数,代币转账逻辑 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; } // @dev 实现 `approve` 函数, 代币授权逻辑 function approve(address spender, uint amount) external override returns (bool) { allowance[msg.sender][spender] = amount; emit Approval(msg.sender, spender, amount); return true; } // @dev 实现`transferFrom`函数,代币授权转账逻辑 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; } // @dev 铸造代币,从 `0` 地址转账给 调用者地址 function mint(uint amount) external { require(owner == msg.sender); balanceOf[msg.sender] += amount; totalSupply += amount; emit Transfer(address(0), msg.sender, amount); } // @dev 销毁代币,从 调用者地址 转账给 `0` 地址 function burn(uint amount) external { balanceOf[msg.sender] -= amount; totalSupply -= amount; emit Transfer(msg.sender, address(0), amount); } }
Шаг 3
После того как вставили код нажимаем значок под цифрой 1 и затем нажимаем кнопку Compile VMK.sol:
Шаг 4
- Выбираем последний значок
- Снова выбираем MetaMask
- Вписываем название и абривиатуру токену. У КАЖДОГО ИНДИВИДУАЛЬНО
- Нажимаем кнопку Transact и подтверждаем транзакцию
Шаг 5
В этой же панели скроллим чуть ниже и видим Deployed Contracts. Нажимаем маленькую стрелочку:
После чего нам откроется панель:
- Видим Mint и снова нажимаем маленькую стрелочку
- Дальше в поле вводим количество монет
18000000000000000000000000
- Нажимаем кнопку Transact и подтверждаем транзакцию
Шаг 6
Тут копируем контракт созданного нами токена:
- Дальше идем на Uniswap, коннектимся к сети Scroll Alpha. Идем во вкладку Пулы и выбираем токен:
Дальше вставляем в поле ввода наш адрес токена, который копировали ранее:
- Далее выбираем комиссию для пула
- Вписываем цену монеты к ETH
- Выбираем диапазон цены, в котором будет работать пул
- Аппрувим
- Подтверждаем транзакцию
На этом все действия окончены!
Вот еще активности в сети Scroll, на самостоятельное тестирование, так как там не сложно. Это игры:
- Крестики-нолики
- Скролл Гардианс
- Скролл чат — ответы на вопросы о Скролл, но только на английском
- FOMO3 Лотерея
Некоторые игры могут не работать, поэтому следим, и проявляем дополнительную активность в сети!!!
Обновление от 01.03.2023:
💥 Заключительный этап перед майннетом. Проделываем действия в новом альфа-пространстве Goerli опираясь на гайд. Дополнительно добавили только пункт «перевести токены друг другу».
1. Дергаем кран в Goerli
2. Переходим на сайт тестнета подключаем MetaMask (Connect Wallet) и добавляем сети (Goerli если уже добавлена, то не нужно снова):
3. Переводим монеты из сети Goerli в сеть Scroll Alpha Testnet:
У меня перевод шел около 10 минут, может идти и дольше. В итоге видим такое сообщение:
4. После того как скинули токены в сеть Scroll, нам нужно отправить их другу (делаем обычный перевод по адресу), и чтобы вам их отправили обратно.
5. Идем на Uniswap, подключаем ММ, там нужно обернуть ETH:
6.Теперь нам нужно свапнуть эфир на USDC, нажимаем на стрелочку вниз рядом с WETH, чтобы выбрать другой токен.
В поисковой строке вставляем Контракт токена 👉0xA0D71B9877f44C744546D649147E3F1e70a93760
Нажимаем на USDC и подтверждаем (жмем Я понимаю):
Теперь свапаем немного эфира на USDC, нажимаем Обменять и подтверждаем обмен:
7. Далее кидаем монеты в пул ликвидности. Нажимаем на выбор токена и выбираем USDC (если в списке нет, то добавляем так же как и ранее по адресу контракта):
(3) Указываем количество USDC, количество эфира установится автоматом
Далее нажимаем Предпросмотр и Добавить:
8. Видим нашу позицию, нажимаем на нее:
Нажимаем Удалить ликвидность, далее забираем полностью или частично:
Можно добавить и забрать ликвидность также используя WETH.
9. Снова переходим на мост и переводим небольшую часть эфира обратно в Goerli
* Не забываем тестировать платформу регулярно и желательно делаем на несколько аккаунтов!
Scroll — это аналог Zksync, Arbitrum, Optimism и т.д. Простыми словами — очередной Layer 2. Проект поднял раунд финансирования в $30кк. В ряды инвесторов входят: Polychain, известные ребята из Ethereum Foundation и другие фонды.
Сейчас есть возможность протестировать проект на ранней стадии, но нужно учитывать то, что сеть постоянно сбрасывается, поэтому активность будем выполнять периодически.
Подключаем кошелек
Переходим на сайт и подключаем кошелек к L1 и L2, чтобы добавить сеть:
Дергаем кран
Переходим на кран и запрашиваем тестовые токены через оранжевую кнопку:
Внимание! Кран периодически не работает
Тестируем мост
Переходим во вкладку Bridge. Нам нужно перегнать токены из L1 в L2. Для этого вписываем нужное количество, нажимаем кнопку и подтверждаем транзакцию:
Делаем свапы
Кидаем токены в пул
В той же вкладке выбираем Вложить, и нажимаем кнопку Add Liquidity:
Выбираем нужное количество токенов, аппрувим транзакцию и подтверждаем депозит:
Также можем забрать или добавить ликвидность:
Тестируем Uniswap
Переходим на Uniswap и подключаем кошелёк.
Выбираем другой токен и вставляем этот адрес контракта TSUSDC в поле 0x38BA9a208F34Ddc9332f6DfC0E9d567f098958A4
Затем вбиваем нужное количество токенов, свапаем и подтверждаем транзакцию:
Кидаем токены в пул
Переходим во вкладку Пулы и открываем новую позицию. Для этого нажимаем кнопку Выберите токен:
- Выбираем торговую пару
- Выбираем процент комиссии
- Ставим диапазон цены
- Указываем количество токенов
- Одобряем транзакцию
Также тут мы можем увеличить или удалить ликвидность:
Ребята, на этом мы закончили тестирование:)
Следим за анонсами в Twitter и подписываемся на Discord
Материал подготовлен экспертом Coin Side — Виолеттой @vi_lola044
Обучение по криптоинвестированию https://coin-side.com