# Активности & Деплой контракта в тестовой сети Scroll.io (Ru)

By [🕴Ruslan🕴](https://paragraph.com/@rrrusx) · 2023-02-09

---

Предисловие
-----------

> Всем ку, с вами снова Рус! ✌

[https://linktr.ee/rrrusx](https://linktr.ee/rrrusx)

> Эта статья для тех, кто уже делал/делает Scroll.io или кто планирует начать проявлять какую-либо активность в тестнете! Недавно, сеть перешла в новую стадию тестирования и перешла на Goerli Testnet.
> 
> Что это значит?- Это означает, что теперь в качестве Layer 1, будет не тестовый блокчейн скролла, а Goerli Testnet, где нативной валютой является ETH Goerli. Именно с этим мы и будем работать, после этого перехода, чтобы делать активности в сети.
> 
> В этой статье вы узнаете:
> 
> 1.  Что нужно сделать в первую очередь после перехода сети в новую стадию
>     
> 2.  Какие активности сейчас есть в сети
>     
> 3.  Развернем с вами смарт контрактик (и не простой, а задеплоим свой токен внутри скролла чтобы было интереснее🤪)
>     
> 
> Буду очень рад если вы жмакните на эти две кнопочки внизу, тем самым поддержите меня и мою первую статью. Буду стараться и дальше делать для вас контент, который может оказаться полезным!👇👇👇👇

> **Эту статью я буду обновлять сразу после появляения новых активностей, поэтому можете нажать Suscribe, чтобы не пропускать их:)** 🫡

[Subscribe](null)

Что такое Scroll?
-----------------

Scroll Network - проект, построенный на технологиях ZK-роллапов _(самое безопасное, дешевое и самым оптимальным в своем классе для масштабирования Ethereum на Layer2)_, а также является аналогом таких сетей, как Оптимизм и Арбитрум. Простыми словами, проект был разработан для решения такой проблемы Ethereum - **масштабируемость сети.** Scroll - является прямым конкурентом вышеупомянутых сетей, при этом сам проект отслеживается Виталиком Бутериным, а также привлек значительную сумму инвестиций от таких VC, Polychain Capital и др.

Пошаговая инструкция по Scroll.io!
----------------------------------

_Распишу пошаговый цикл всех действий. Цикл проделываю каждый день, в зависимости от работы сети._ ✍

Две основные ссылки: [Сайтик](https://scroll.io/alpha); [СтатусЧек](https://status.scroll.io/) _(эт полезная тема, сеть частенько падает),_ [дс](https://discord.gg/scroll) _(можно занести тех вопрос или фб)_

1/ По первых после перехода сети нам нужно добавить две новые сети в наш кошелек, если вы еще этого не сделали, поэтому переходим [сюда](https://scroll.io/alpha) и следуем инструкциям (все очень просто)

2/ После этого так как теперь Scroll перешел на Goerli, нам нужно получить токены этого блокчейна, для этого идем [сюда](https://goerlifaucet.com/) и заправшиваем тестовые ETH. (старайтесь проделывать это каждый день, чтобы иметь возможность чаще взаимодействовать с сетью.

3/ Варик для продвинутых гиков\* - кому мало крана и кто хочет много гоерли то ETH Goerli сейчас активно торгуются на ОТС площадках где вы можете их приобрести. [Здесь](https://t.me/KomaRlck/119) `Комарик привет!:)` , можете найти гайд по работе с ОТС, но ДИОР!

4/ После того как вы имеете на кошельке ETH Goerli идем [сюда](https://scroll.io/alpha/bridge) → бриджим наш ETH Goerli маленькими объемами (я делаю 5+ транз примерно)

5/ Так, теперь у нас есть ETH на Скролле. Хоть активностей сейчас не оч много, тк не все проекты успели перейти на новую сеть, однако, мы идем [на наш любимый Юнисвапчик](https://uniswap-v3.scroll.io/#/swap) делать свапы и закидывать ликву.

6/ Оборачиваем наш эфир в WETH. Делаем свапы с различными токенами которые сейчас доступны в сети чтобы проявлять активность. Нажимаем [на эту ссылку](https://uniswap-v3.scroll.io/#/swap?outputCurrency=0x96d71e12950d19b07441df3e15fc72e952c98254) если хотим свапнуть тестовый токен, это мой токен, я регулярно закидываю ликву в пул, так что можете свапать на здоровье 🫡.

Либо, можно вставить в поиск адрес контракта токена - `0x96d71e12950d19b07441df3e15fc72e952c98254` и свапнуть если у токена есть ликвидность на юнисвапе!!

![Сюда просто вставляем адрес смарт контракта](https://storage.googleapis.com/papyrus_images/3a1064e5e22b5dc754015d3936f61f8ae100e56b85cf7788848b5c5ba5692f64.png)

Сюда просто вставляем адрес смарт контракта

7/ Закидываем в пулы ликвидности на Юни [здесь](https://uniswap-v3.scroll.io/#/pool). Можете также выбрать любую пару для пула, однако, если вы закинете пул ликвидносит в паре с моим токеном я буду ОЧЕНЬ вам благодарен! 🥰

> _Также можете отписать мне в_ [_личку тг_](https://t.me/rrrusx) _и я закину вам своих токенов, можно будет замутить совместные пулы_

8/ Новый протокол стал поддерживать альфу Скролла - SyncSwap. Идем для начала [сюда](https://staging.syncswap.xyz/swap) и делаем свапы по всем токенам которые представлены в протоколе, также вы всегда можете свапнуть мой токен по этому адресу - `0x96d71e12950d19b07441df3e15fc72e952c98254`

9/ Создаем пулы ликвидности [вот тут](https://staging.syncswap.xyz/pool). ПО возможности создаем пулы со всеми токенами, которые свапнули. Можно поделать пулы с токенами друг друга, можете отписать мне в личку и по фану поделать такую активность.

10/ Еще один новый протокол стал поддерживать альфу Скролла - Zada Finance. Идем для начала [сюда](https://www.zadafinance.com/) и получаем ZDA токены за ретви. Потом делаем пару свапов по всем токенам которые представлены в протоколе, также вы всегда можете свапнуть мой токен по этому адресу - `0x96d71e12950d19b07441df3e15fc72e952c98254`

Плюс, создаем пул ликвидности, также со своим или любым токеном. Можете также добавить ликвидность в мой пул ликвидности добавив контракт моего токена выше.

11/ Недавно произошел деплой AAVE протокола на Скролле, так что залетаем [сюда](https://app.aave.com/), в настройках не забываем выставить тестнет _(см. скрин ниже)._

![В правом верхнем уголке нажимаем на настройки и выбираем "Testnet Mode", а потом выбираем Scroll Network](https://storage.googleapis.com/papyrus_images/08b729c370d879e689c220e89e5da76e641a5f1288d636060ce31ae7ab2d3c34.png)

В правом верхнем уголке нажимаем на настройки и выбираем "Testnet Mode", а потом выбираем Scroll Network

Делаем саплай на те ассеты, что есть на балансе и берем борроу в любых! А еще есть [кран внутри Ааве](https://app.aave.com/faucet/)\*

\*12/ Нашел еще одну прикольную активность которую можно сделать только тс 🤫 - идем [сюда](https://guild.xyz/scrollzkp) и получаем мега секретную роль!

13/ Еще нашел прикольную игру в Скролле, кому не лень можно просто потыкаться. Я даже как-то позадротил в нее норм хахаха. Идем [сюда](https://scroll-237a2.web.app/), минтим себе перса и качаем!

14/ Выводим чз бридж средства в Л1.

**Итог:** Это основные активности которые можно проделать в сети на данный момент, которые не требуют каких-то дополнительных усилий.

В том случае, если вы хотите также развернуть контракт в тестнете и поугарать, тооо…

Деплой контракта (лаунч токена) - пошаговая инструкция
------------------------------------------------------

1/ переходим [сюда](https://remix.ethereum.org/#optimize=false&runs=200&evmVersion=null&version=soljson-v0.8.17+commit.8df45f5f.js)

2/ жмем на “Create New File” + Имя нового файла: “ScrollTestToken.sol”

![](https://storage.googleapis.com/papyrus_images/534727a90147e771b490d4a088aea043432f92b5f5fc3bc1e142a9c9b6a8e4c8.png)

![Выглядеть должно вот так](https://storage.googleapis.com/papyrus_images/d2576c985043bd3830eecfd6b8e98ea6b95e818ef320b93629ac013b51f1b61a.png)

Выглядеть должно вот так

3/ копируем и вставляем код ниже в файл

    // SPDX-License-Identifier: MIT
    pragma solidity 0.8.11;
    import "@openzeppelin/contracts/token/ERC20/IERC20.sol";
    
    contract MyToken is IERC20 {
        string public name;
        string public symbol;
        uint8 public decimals;
        uint256 private _totalSupply;
        mapping(address => uint256) private _balances;
        mapping(address => mapping(address => uint256)) private _allowances;
        
        constructor(string memory _name, string memory _symbol, uint8 _decimals, uint256 initialSupply) {
            name = _name;
            symbol = _symbol;
            decimals = _decimals;
            _totalSupply = initialSupply * (10 ** decimals);
            _balances[msg.sender] = _totalSupply;
            emit Transfer(address(0), msg.sender, _totalSupply);
        }
        
        function totalSupply() public view override returns (uint256) {
            return _totalSupply;
        }
        
        function balanceOf(address account) public view override returns (uint256) {
            return _balances[account];
        }
        
        function transfer(address recipient, uint256 amount) public override returns (bool) {
            _transfer(msg.sender, recipient, amount);
            return true;
        }
        
        function allowance(address owner, address spender) public view override returns (uint256) {
            return _allowances[owner][spender];
        }
        
        function approve(address spender, uint256 amount) public override returns (bool) {
            _approve(msg.sender, spender, amount);
            return true;
        }
        
        function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
            _transfer(sender, recipient, amount);
            _approve(sender, msg.sender, _allowances[sender][msg.sender] - amount);
            return true;
        }
        
        function _transfer(address sender, address recipient, uint256 amount) internal {
            require(sender != address(0), "Transfer from the zero address");
            require(recipient != address(0), "Transfer to the zero address");
            require(_balances[sender] >= amount, "Transfer amount exceeds balance");
            _balances[sender] -= amount;
            _balances[recipient] += amount;
            emit Transfer(sender, recipient, amount);
        }
        
        function _approve(address owner, address spender, uint256 amount) internal {
            require(owner != address(0), "Approve from the zero address");
            require(spender != address(0), "Approve to the zero address");
            _allowances[owner][spender] = amount;
            emit Approval(owner, spender, amount);
        }
    }
    

4/ прожимаем сначала кнопку "1” а потом нажимаем , где написнао “2”, как показано на скрине ниже _(Compiler можете выбрать любой, но лучше выбирать одну из последних версий)_

![](https://storage.googleapis.com/papyrus_images/bad892b9790544a29ff8baebcb5cc489e8cd19fb1b67fa152522900a9d7e86f7.png)

5/ после этого

*   меняем сеть на Scroll Alpha Testnet в метамаске
    
*   меняем среду на “Injected Provider - MetaMask“ _(“2“)_
    
*   Name: Указываем название вашего токена
    
*   Symbol: Тикер вашего токена
    
*   Decimals: 18
    
*   Supply: указывайте сколько хотите) Это начальное предложение вашего токена
    
*   нажимаем “Transact“ (“3“)
    

![](https://storage.googleapis.com/papyrus_images/cdfaad3f0497b291279b53ee27b3f4779f44a6797a0665dd65bd9e92a9d4e0a6.png)

6/ Итак, вы подписали транзакцию и теперь у вас есть свой смарт контракт ВАШЕГО токена! Прокрутив вниз, вы увидите панель управления вашего смартконтракта, Выглядеть должно так:

![В этой панеле вы можете проделывать взаимодействия с вашим токеном!](https://storage.googleapis.com/papyrus_images/3ee2eadb3d769dd4c152d3152b7653dc451822cccb0eee2f56ca2f7117c5190d.png)

В этой панеле вы можете проделывать взаимодействия с вашим токеном!

7/ Все ваши смарт контракты и токены можно просматривать вот [тут](https://blockscout.scroll.io/)

> Всем спасибо кто дочитал до конца:)
> 
> Буду продолжать в том же духе ✊
> 
> Мой тг - @rrrusx, всегда рад видеть вас там, если возникают вопросики, always welcome ✌️

---

*Originally published on [🕴Ruslan🕴](https://paragraph.com/@rrrusx/scroll-io-ru)*
