Ended Events
August 26, 2021

HOPR: Wildhorn /// v1.2

Anyone can participate in the Wildhorn testnet, which uses valueless mHOPR tokens. Visit the dashboard at network.hoprnet.org to link a wallet and get started. If you’re in HOPR’s staking program, your address will automatically be whitelisted and you can use the dashboard to claim HOPR testnet tokens (mHOPR) and MATIC to fund up to 10 nodes. If you’re new to HOPR, you’ll be able to get mHOPR testnet tokens via a faucet.

Once your nodes are running, you can use the new signing function to link your node(s) to a reward address. Earn points by completing tasks with nodes, including sending and relaying data, opening and closing payment channels, and redeeming the cryptographic tickets which power HOPR’s proof-of-relay mechanism.

Everyone who meets the minimal activity threshold can claim a Bronze testnet NFT which can be traded or redeemed for a 1% APR boost in HOPR’s staking program. Complete more tasks to earn higher-ranked NFTs which confer up to a 5% APR boost.

Medium | Docs | GitHub | WebSite | Twitter | Discord | Telegram

HW: 1 CPU x 2 GB RAM x 50 GB SSD
ОS: Ubuntu 20.04

Если вы не знаете, что такое нода — читаем статью.
Если вы не знаете, где арендовать сервер для ноды — читаем статью.
Если вы не знаете, как подключиться к серверу — читаем статью.
Если вы всё знаете — открываем MobaXterm и создаём сессию.
# обновляем 'базу данных', обновляем дистрибутив
$ sudo apt-get update && sudo apt-get upgrade -y
# скачиваем докер одной командой, благодарность @SecorD0 за скрипт
$ . <(wget -qO- https://raw.githubusercontent.com/SecorD0/utils/main/docker_installer.sh)
# скачиваем докер 'hoprd'
$ docker pull hopr/hoprd:matic
# запускаем докер одной командой
$ docker run -d -it --restart=always \
-v $HOME/.hoprd-db-matic:/app/db -e DEBUG=hopr* \
-p 9091:9091 -p 3000:3000 -p 8080:8080 --name=hoprd hopr/hoprd:matic \
--password='h0pR-w1Lh0RN' --init --announce \
--identity /app/db/.hopr-identity --testNoAuthentication \
--admin --adminHost 0.0.0.0 --healthCheck --healthCheckHost 0.0.0.0
# проверяем логи
$ docker logs hoprd --follow --tail=100
# удаляем докер, если нужно
$ docker stop hoprd && docker container rm hoprd
$ rm -Rvf $HOME/.hoprd-db-matic
# смотрим установленные докеры, если нужно
$ docker ps -a

Начнётся синхронизация:

Теперь открываем обычный браузер на своей локальной машине и переходим по адресу: http://your_vps_ip:3000.

К примеру, IP моего сервера - 95.1.1.133.
Значит, я перехожу по адресу - 95.1.1.133:3000.
# узнать ip можно командой
$ hostname -i

Откроется вот такой вот терминал. Теперь нам нужно связать нашу ноду на сервере со своим личным кошельком (куда в будущем прилетят NFT).

Открываем метамаск и добавляем Polygon Network. Переходим на сайт тестнета и коннектим метамаск:

Первым делом нажимаем Connect to IDX и создаём новый ID:

Соглашаемся:

После привязки стали доступны новые функции:

Теперь нам нужно "зафундить" ноду. Для этого возвращаемся в терминал и получаем адрес нашей ноды:

Заполняем поле нашим адресом ноды и нажимаем Validate node for funding, тем самым запрашивая токены:

Если нода работает правильно, то появится кнопка Fund. Нажимаем на неё и подтверждаем транзакцию:

После обработки транзакции (примерно 10 минут), вы получите токены.

Я ждал пару часов, несколько раз накликал Fund и мне случайно прилетело аж 70. Не делайте так.
Баланс можно проверить в "синем" терминале командой balance.

Если у вас похожая ошибка, что-то типа ошибки аутентификации, тогда делаем следующее:

# удаляем докер
$ docker stop hoprd && docker container rm hoprd

# запускаем докер 'hoprd' с аутентификацией
$ docker run -d -it --restart=always \
-v $HOME/.hoprd-db-matic:/app/db -e DEBUG=hopr* \
-p 9091:9091 -p 3000:3000 -p 8080:8080 --name=hoprd hopr/hoprd:matic \
--password='h0pR-w1Lh0RN' --init --announce \
--identity /app/db/.hopr-identity --apiToken='h0pR-4p1+0k3N!' \
--admin --adminHost 0.0.0.0 --healthCheck --healthCheckHost 0.0.0.0

При таком варианте запуска докера, потребуется ввести пароль в "синем" терминале. Пароль - h0pR-4p1+0k3N!

Перейдём к верификации нашей ноды.
Это нужно для того, чтобы доказать, что нода ваша - привязать её к вашему личному адресу (которым коннектились к сайту).

Открываем терминал и вводим следующую команду:

$ sign 0x000

# где 0x000 - ваш личный адрес из метамаска

Затем возвращаемся в дашборд, вводим в соответствущие поля адрес ноды и вывод с терминала:

Нажимаем "Verify node for rewards", подтверждаем действие в метамаске.

Если вы делали хоть какие-то действия из этой статьи про активности, то вам прилетит уведомление о том, что ваша нода "записана" и в скором времени вам айрдропом прилетит нфтшка (после 8 сентября):

Верификацию мы проделываем с каждой нодой, привязывая её к одному адресу, чтобы заработать больше очков и получить более качественную НФТ.

В официальной документации сказано, что можно привязать несколько нод к одному личному адресу (пока может отображаться только одна нода, привязанная к одному адресу, админы знают и фиксят). Зачем?

Качество NFT (и любых наград, в принципе, в этом тестнете) будет зависеть от количества очков, набранных за тестнет.

Очки будут присуждаться за активность. Цитата:

"Now that your node is up and running, you’re ready to start earning points. The Network and NFT panels will be activated in the next 48 hours, but all on-chain activity before that happens will still count. There are various things you can do to help test the network. Open channels to other nodes and send messages to generate tickets for the relayers. Every action which generates on-chain data will increase your score in some way, although you won’t see this reflected in the leaderboard just yet."

Написал статью, что конкретно нужно делать для получения очков. В этом поможет команда help в "синем" терминале:

В общих чертах - я поставлю несколько нод, привяжу к одному адресу и проведу некое взаимодействие между ними: пропингуюсь, поотправляю транзакции - попробую каждую команду из хелпа на вкус, чего и вам советую.

Для восстановления понадобится папка .hoprd-db-matic, находящаяся в "корневом" каталоге.

Её нужно сохранить и, в случае чего, - просто заменить на новом сервере.

мамичу за то, что родила такого гения.

@how_to_node - канал, где я выкладываю свои гайды.

Полезные ресурсы.

Крипто-кошельки автора гайда.