October 19, 2021

Game


Содержание


neuron-1

К содержанию

До 17.10.21 14:00 по МСК

⠀Установить GO

. <(wget -qO- https://raw.githubusercontent.com/SecorD0/utils/main/installers/golang.sh)

⠀Установить ноду

git clone https://github.com/cosmos-gaminghub/nibiru.git; cd nibiru && git checkout -b neuron-1 tags/neuron-1 && make install; cd

⠀Придумать название ноды, запустить команду и ввести название, тем самым добавить его в систему в виде переменной

. <(wget -qO- https://raw.githubusercontent.com/SecorD0/utils/main/miscellaneous/insert_variable.sh) -n game_moniker

⠀Инициализировать ноду

nibirud init "$game_moniker" --chain-id neuron-1

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

. <(wget -qO- https://raw.githubusercontent.com/SecorD0/utils/main/miscellaneous/insert_variable.sh) -n game_wallet_name

⠀Создать кошелёк

nibirud keys add "$game_wallet_name" --keyring-backend file

Сохранить вывод команды в надёжном месте

⠀Добавить адрес кошелька в систему в виде переменной (необходимо ввести пароль от кошелька)

. <(wget -qO- https://raw.githubusercontent.com/SecorD0/utils/main/miscellaneous/insert_variable.sh) -n game_wallet_address -v `nibirud keys show "$game_wallet_name" -a --keyring-backend file`

⠀Добавить аккаунт в генезис

nibirud add-genesis-account "$game_wallet_address" 100000000000ugame

⠀Создать генезис файл

nibirud gentx "$game_wallet_name" 100000000000ugame \
  --moniker "$game_moniker" \
  --identity "___" \
  --pubkey `nibirud tendermint show-validator` \
  --chain-id neuron-1 \
  --commission-rate 0.1 \
  --commission-max-rate 1 \
  --commission-max-change-rate 0.1 \
  --keyring-backend file

Сделать резервную копию папки с настройками, сохранив себе на ПК (команда отображает путь)

echo $HOME/.nibiru/config/

⠀Сделать PR в GitHub:

  • Название файла
echo "${game_moniker}.json"
  • Содержимое
cat $HOME/.nibiru/config/gentx/gentx-*.json

⠀Вступить в Discord и поставить смайлик на сообщение

⠀Заполнить форму:

  • Адрес кошелька
cat $HOME/.nibiru/config/gentx/gentx-*.json | jq -r ".body.messages[0].delegator_address"

  • Адрес валидатора
cat $HOME/.nibiru/config/gentx/gentx-*.json | jq -r ".body.messages[0].validator_address"

⠀Добавить пир в текстовый документ по аналогии с остальными

cat $HOME/.nibiru/config/gentx/gentx-*.json | jq -r ".body.memo"

До 20.10.21 14:00 по МСК

Автоматически

⠀Запустить скрипт

. <(wget -qO- https://gitlab.com/SecorD0/game/-/raw/main/multi_tool.sh)

⠀Найти в текстовом файле свою ноду и ниже сида выложить TCP по аналогии

echo "http://`wget -qO- eth0.me`:26657/"

⠀Открыть лог

game_log

⠀Должен выглядеть примерно так

Вручную

⠀Установить ноду новой версии

cd nibiru && git fetch --all --tags && git checkout -b neuron-1.1 tags/neuron-1.1 && make install; cd

⠀Проверить версию, должна быть neuron-1.1

nibirud version

⠀Скачать генезис

wget -qO $HOME/.nibiru/config/genesis.json https://raw.githubusercontent.com/cosmos-gaminghub/testnets/master/neuron-1/genesis.json

⠀На всякий случай сбросить состояние валидатора

nibirud unsafe-reset-all

⠀Открыть порты

. <(wget -qO- https://raw.githubusercontent.com/SecorD0/utils/main/miscellaneous/ports_opening.sh) 26656 26657

⠀Изменить конфиг

sed -i -e "s%^laddr *=.*%laddr = \"tcp://`wget -qO- eth0.me`:26657\"%; s%^moniker *=.*%moniker = \"$game_moniker\"%; s%^seeds *=.*%seeds = \"ac175b66221b555751b3a5fb2e6a8844ba01228d@167.179.104.210:26656,649e13457ce5e8c5d7cd7845625a6f8b4ded9eb9@62.171.177.10:26656,15ce53fe92b159b711878d4256abf4f8156751f2@135.181.26.211:26656\"%; " $HOME/.nibiru/config/config.toml

⠀Изменить минимальную цену газа

sed -i "s%minimum-gas-prices *=.*%minimum-gas-prices = \"0.0001ugame\"%" $HOME/.nibiru/config/app.toml

⠀Найти в текстовом файле свою ноду и ниже сида выложить TCP по аналогии

echo "http://`wget -qO- eth0.me`:26657/"

⠀Создать сервисный файл

printf "[Unit]
Description=Game Node
After=network-online.target

[Service]
User=$USER
ExecStart=`which nibirud` start
Restart=on-failure
RestartSec=3
LimitNOFILE=65535

[Install]
WantedBy=multi-user.target" > /etc/systemd/system/gamed.service

⠀Запустить сервис

sudo systemctl daemon-reload
sudo systemctl enable gamed
sudo systemctl restart gamed

⠀Добавить команду для просмотра лога ноды в систему в виде переменной

. <(wget -qO- https://raw.githubusercontent.com/SecorD0/utils/main/miscellaneous/insert_variable.sh) -n game_log -v "sudo journalctl -f -n 100 -u gamed" -a

⠀Добавить команду для просмотра информации о ноде в систему в виде переменной

. <(wget -qO- https://raw.githubusercontent.com/SecorD0/utils/main/miscellaneous/insert_variable.sh) -n game_node_info -v ". <(wget -qO- https://gitlab.com/SecorD0/game/-/raw/main/node_info.sh) -l RU 2> /dev/null" -a

⠀Открыть лог

game_log

⠀Должен выглядеть примерно так

До 28.10.21 14:00 по МСК

⠀Установить Cro ноду:

  • В начале ввести название ноды и название кошелька;
  • В конце ввести 2 раза пароль для кошелька.
. <(wget -qO- https://raw.githubusercontent.com/SecorD0/Cro/main/installer.sh)

Сохранить выведенную мнемоническую фразу

⠀Дождаться синхронизации

cro_node_info

⠀Запросить токены с крана на Cro адрес

⠀Установить ретранслятор

wget -q https://github.com/strangelove-ventures/relayer/archive/refs/tags/v0.9.3.tar.gz; \
tar -xvf "/root/v0.9.3.tar.gz"; \
cd "/root/relayer-0.9.3/"; \
make build; \
chmod +x "/root/relayer-0.9.3/build/rly"; \
mv "/root/relayer-0.9.3/build/rly" /usr/bin/rly

⠀Инициализировать ретранслятор

rly config init

⠀Создать файлы настроек Game и Cro сетей

echo '{"chain-id":"neuron-1","rpc-addr":"'`cat "$HOME/.nibiru/config/config.toml" | grep -oPm1 "(?<=^laddr = \")([^%]+)(?=\")"`'","account-prefix":"game","gas-adjustment":1.5,"gas-prices":"0.025ugame","trusting-period":"10m"}' > $HOME/.relayer/config/game_config.json
echo '{"chain-id":"testnet-croeseid-4","rpc-addr":"'`cat "$HOME/.chain-maind/config/config.toml" | grep -oPm1 "(?<=^laddr = \")([^%]+)(?=\")"`'","account-prefix":"tcro","gas-adjustment":1.5,"gas-prices":"0.025basetcro","trusting-period":"10m"}'  > $HOME/.relayer/config/croeseid_config.json

⠀Добавить сети в ретранслятор

rly chains add -f $HOME/.relayer/config/game_config.json
rly chains add -f $HOME/.relayer/config/croeseid_config.json

⠀Восстановить кошельки при помощи мнемонических фраз в ретрансляторе

rly keys restore neuron-1 "$game_wallet_name" "МНЕМОНИКА"
rly keys restore testnet-croeseid-4 "$cro_wallet_name" "МНЕМОНИКА"

⠀Привязать кошельки к сетям

rly chains edit neuron-1 key "$game_wallet_name"
rly chains edit testnet-croeseid-4 key "$cro_wallet_name"

⠀Перевести 1 tkro с кошелька ноды на кошелёк Relayer’а

chain-maind tx bank send "$cro_wallet_name" `rly keys show testnet-croeseid-4 "$cro_wallet_name"` 100000000basetcro \
  --from "$cro_wallet_name" \
  --chain-id testnet-croeseid-4 \
  --gas-prices 0.1basetcro \
  --node `cat "$HOME/.chain-maind/config/config.toml" | grep -oPm1 "(?<=^laddr = \")([^%]+)(?=\")"` \
  -y

⠀Запустить клиенты сетей

rly light init neuron-1 -f
rly light init testnet-croeseid-4 -f

⠀Добавить пути в конфиг

cat >> $HOME/.relayer/config/config.yaml <<EOF 
  cro:
    src:
      chain-id: testnet-croeseid-4
      port-id: transfer
      order: UNORDERED
      version: ics20-1
    dst:
      chain-id: neuron-1
      port-id: transfer
      order: UNORDERED
      version: ics20-1
    strategy:
      type: naive
  game:
    src:
      chain-id: neuron-1
      port-id: transfer
      order: UNORDERED
      version: ics20-1
    dst:
      chain-id: testnet-croeseid-4
      port-id: transfer
      order: UNORDERED
      version: ics20-1
    strategy:
      type: naive
EOF

⠀Проверить, всё ли готово к работе

rly chains list

⠀Запустить клиенты сетей ещё раз

rly light init neuron-1 -f
rly light init testnet-croeseid-4 -f

⠀Открыть Game канал (дождаться надписи Channel created)

rly tx link game

⠀При возникновении любых ошибок, из-за которых не открывается канал, выполнить команды

sed -i '/client-id/d' $HOME/.relayer/config/config.yaml; \
rm -rf $HOME/.relayer/light/

⠀Затем заново запустить клиенты и открыть каналы

Повторять до тех пор, пока каналы не откроются

⠀Открыть Cro канал (дождаться надписи Channel created)

rly tx link cro

⠀Отправить 1game на Cro адрес

rly tx transfer neuron-1 testnet-croeseid-4 1000000ugame `rly keys show testnet-croeseid-4 "$cro_wallet_name"` --path game

⠀При возникновении любых ошибок, из-за которых не отправляются токены, выполнить команды

sed -i -e '/client-id/d; /connection-id/d; /channel-id/d' $HOME/.relayer/config/config.yaml; \
rm -rf $HOME/.relayer/light/

⠀Затем заново запустить клиенты и открыть каналы

Повторять до тех пор, пока токены не будут успешно отправлены

⠀Отправить 1tkro на Game адрес

rly tx transfer testnet-croeseid-4 neuron-1 1000000basetcro `rly keys show neuron-1 "$game_wallet_name"` --path cro

Полезные ссылки

Explorer

Официальная документация


nibiru-3000

К содержанию

До 19.01.22 11:00 UTC / 14:00 МСК

⠀Установить GO

. <(wget -qO- https://raw.githubusercontent.com/SecorD0/utils/main/installers/golang.sh)

⠀Установить Cosmovisor

go install github.com/cosmos/cosmos-sdk/cosmovisor/cmd/cosmovisor@latest; \
mv `which cosmovisor` /usr/bin

⠀Установить ноду

git clone https://github.com/cosmos-gaminghub/nibiru.git; cd nibiru && git checkout -b v0.9 tags/v0.9 && make install; cd; mv `which nibirud` /usr/bin/

⠀Поместить бинарный файлы ноды в Cosmovisor

mkdir -p $HOME/.nibiru/cosmovisor/genesis/bin $HOME/.nibiru/cosmovisor/upgrades; \
cp `which nibirud` $HOME/.nibiru/cosmovisor/genesis/bin

⠀Придумать название ноды, запустить команду и ввести название, тем самым добавить его в систему в виде переменной

. <(wget -qO- https://raw.githubusercontent.com/SecorD0/utils/main/miscellaneous/insert_variable.sh) -n game_moniker

⠀Инициализировать ноду

nibirud init "$game_moniker" --chain-id=nibiru-3000

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

. <(wget -qO- https://raw.githubusercontent.com/SecorD0/utils/main/miscellaneous/insert_variable.sh) -n game_wallet_name

⠀Создать кошелёк

nibirud keys add "$game_wallet_name" --keyring-backend file

Сохранить вывод команды в надёжном месте

⠀Добавить адрес кошелька в систему в виде переменной (необходимо ввести пароль от кошелька)

. <(wget -qO- https://raw.githubusercontent.com/SecorD0/utils/main/miscellaneous/insert_variable.sh) -n game_wallet_address -v `nibirud keys show "$game_wallet_name" -a --keyring-backend file`

⠀Добавить аккаунт в генезис

nibirud add-genesis-account "$game_wallet_address" 100000000000ugame

⠀Создать генезис файл

nibirud gentx "$game_wallet_name" 100000000000ugame \
  --moniker "$game_moniker" \
  --identity "___" \
  --pubkey `nibirud tendermint show-validator` \
  --chain-id nibiru-3000 \
  --commission-rate 0.1 \
  --commission-max-rate 1 \
  --commission-max-change-rate 0.1 \
  --keyring-backend file \
  --output-document "$HOME/${game_moniker}.json"

Сделать резервную копию папки с настройками, сохранив себе на ПК (команда отображает путь)

echo $HOME/.nibiru/config/

⠀Сделать PR в GitHub:

  • Название файла
echo "${game_moniker}.json"
  • Содержимое
cat "$HOME/${game_moniker}.json"

До 21.01.22 11:00 UTC / 14:00 МСК

⠀Скачать генезис

wget -qO $HOME/.nibiru/config/genesis.json https://raw.githubusercontent.com/cosmos-gaminghub/testnets/master/nibiru-3000/genesis.json

⠀На всякий случай сбросить состояние валидатора

nibirud unsafe-reset-all

⠀Открыть порты

. <(wget -qO- https://raw.githubusercontent.com/SecorD0/utils/main/miscellaneous/ports_opening.sh) 26656 26657

⠀Изменить конфиг

sed -i -e "s%^moniker *=.*%moniker = \"$game_moniker\"%; s%^seeds *=.*%seeds = \"4d6c590024b3a24985e910b172fc3b7d3493648a@45.32.39.253:26656\"%; " $HOME/.nibiru/config/config.toml

⠀Создать сервисный файл

sudo tee <<EOF >/dev/null /etc/systemd/system/gamed.service
[Unit]
Description=Game node
After=network.target

[Service]
User=$USER
Environment="DAEMON_NAME=nibirud"
Environment="DAEMON_HOME=$HOME/.nibiru"
Environment="DAEMON_ALLOW_DOWNLOAD_BINARIES=true"
Environment="DAEMON_RESTART_AFTER_UPGRADE=true"
ExecStart=`which cosmovisor` start
Restart=on-failure
RestartSec=3
LimitNOFILE=65535

[Install]
WantedBy=multi-user.target
EOF

⠀Запустить сервис

sudo systemctl daemon-reload
sudo systemctl enable gamed
sudo systemctl restart gamed

⠀Добавить команду для просмотра лога ноды в систему в виде переменной

. <(wget -qO- https://raw.githubusercontent.com/SecorD0/utils/main/miscellaneous/insert_variable.sh) -n game_log -v "sudo journalctl -fn 100 -u gamed" -a

⠀Добавить команду для просмотра информации о ноде в систему в виде переменной

. <(wget -qO- https://raw.githubusercontent.com/SecorD0/utils/main/miscellaneous/insert_variable.sh) -n game_node_info -v ". <(wget -qO- https://gitlab.com/SecorD0/game/-/raw/main/node_info.sh) -l RU 2> /dev/null" -a

⠀Открыть лог

game_log

⠀Должен выглядеть примерно так

Переход на Cosmovisor

⠀Установить Cosmovisor

go install github.com/cosmos/cosmos-sdk/cosmovisor/cmd/cosmovisor@latest; \
mv `which cosmovisor` /usr/bin

⠀Переместить бинарный файл ноды

mv `which nibirud` /usr/bin/

⠀Изменить путь к бинарному файлу ноды в авто-делегаторе

sed -i -e "s%^cr_daemon=\".*%cr_daemon=\"`which nibirud`\"%" $HOME/.nibiru/cr_config.sh

⠀Поместить бинарный файл ноды в Cosmovisor

mkdir -p $HOME/.nibiru/cosmovisor/genesis/bin $HOME/.nibiru/cosmovisor/upgrades; \
cp `which nibirud` $HOME/.nibiru/cosmovisor/genesis/bin

⠀Создать сервисный файл

sudo tee <<EOF >/dev/null /etc/systemd/system/gamed.service
[Unit]
Description=Game node
After=network.target

[Service]
User=$USER
Environment="DAEMON_NAME=nibirud"
Environment="DAEMON_HOME=$HOME/.nibiru"
Environment="DAEMON_ALLOW_DOWNLOAD_BINARIES=true"
Environment="DAEMON_RESTART_AFTER_UPGRADE=true"
ExecStart=`which cosmovisor` start
Restart=on-failure
RestartSec=3
LimitNOFILE=65535

[Install]
WantedBy=multi-user.target
EOF

⠀Запустить сервис

sudo systemctl daemon-reload
sudo systemctl enable gamed
sudo systemctl restart gamed

Полезные ссылки

Официальная документация


Game game-pre

К содержанию

До 12.02.22 11:00 UTC / 14:00 МСК

⠀Установить GO

. <(wget -qO- https://raw.githubusercontent.com/SecorD0/utils/main/installers/golang.sh)

⠀Установить ноду

git clone https://github.com/cosmos-gaminghub/nibiru.git; cd nibiru && git checkout -b v1.0-rc1 tags/v1.0-rc1 && make install; cd; mv `which nibirud` /usr/bin/

⠀Придумать название ноды, запустить команду и ввести название, тем самым добавить его в систему в виде переменной

. <(wget -qO- https://raw.githubusercontent.com/SecorD0/utils/main/miscellaneous/insert_variable.sh) -n game_moniker

⠀Задать настройки

nibirud config chain-id game-pre
nibirud config keyring-backend file

⠀Инициализировать ноду

nibirud init "$game_moniker" --chain-id game-pre

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

. <(wget -qO- https://raw.githubusercontent.com/SecorD0/utils/main/miscellaneous/insert_variable.sh) -n game_wallet_name

⠀Импортировать кошелёк из самой первой тестовой сети neuron-1

nibirud keys add "$game_wallet_name" --recover

⠀Добавить адрес кошелька в систему в виде переменной (необходимо ввести пароль от кошелька)

. <(wget -qO- https://raw.githubusercontent.com/SecorD0/utils/main/miscellaneous/insert_variable.sh) -n game_wallet_address -v `nibirud keys show "$game_wallet_name" -a`

⠀Проверить, есть ли вывод (есть ли адрес кошелька в списке участников)

number=`wget -qO- https://raw.githubusercontent.com/cosmos-gaminghub/mainnet/main/accounts/incentivized_testnet_rewards.json | jq -r 'to_entries[] | select(.key=='\"$game_wallet_address\"')' | jq -r ".value"`; \
echo $number

Если нет

⠀Вряд ли получится принять участие

Если да

⠀Добавить аккаунт в генезис

nibirud add-genesis-account "$game_wallet_address" "${number}ugame"

⠀Создать генезис файл

nibirud gentx "$game_wallet_name" "${number}ugame" \
  --moniker "$game_moniker" \
  --identity "___" \
  --pubkey `nibirud tendermint show-validator` \
  --chain-id game-pre \
  --commission-rate 0.1 \
  --commission-max-rate 1 \
  --commission-max-change-rate 0.1 \
  --output-document "$HOME/${game_moniker}.json"

Сделать резервную копию папки с настройками, сохранив себе на ПК (команда отображает путь)

echo $HOME/.nibiru/config/

⠀Сделать PR в GitHub:

  • Название файла
echo "${game_moniker}.json"
  • Содержимое
cat "$HOME/${game_moniker}.json"
  • Нажать кнопку «Propose new file»
  • Нажать кнопку «Create pull request»
  • Нажать кнопку «Create pull request»

До 14.02.22 11:00 UTC / 14:00 МСК

⠀Скачать генезис

wget -qO $HOME/.nibiru/config/genesis.json.gz https://raw.githubusercontent.com/cosmos-gaminghub/testnets/master/game-pre/genesis.json.gz; \
rm -rf $HOME/.nibiru/config/genesis.json; \
gzip -d $HOME/.nibiru/config/genesis.json.gz

⠀Изменить конфиг

sed -i -e "s%^moniker *=.*%moniker = \"$game_moniker\"%; s%^seeds *=.*%seeds = \"1029d637f2ef514833394d2f7b12e93bb2537d1a@167.179.113.103:26656,7d2170f974a250ab1b9f2c269268cc5f2eb8eb37@198.13.50.199:26656\"%; " $HOME/.nibiru/config/config.toml

⠀Создать сервисный файл

printf "[Unit]
Description=Game Node
After=network-online.target

[Service]
User=$USER
ExecStart=`which nibirud` start
Restart=on-failure
RestartSec=3
LimitNOFILE=65535

[Install]
WantedBy=multi-user.target" > /etc/systemd/system/gamed.service

⠀Запустить сервис

sudo systemctl daemon-reload
sudo systemctl enable gamed
sudo systemctl restart gamed

⠀Добавить команду для просмотра лога ноды в систему в виде переменной

. <(wget -qO- https://raw.githubusercontent.com/SecorD0/utils/main/miscellaneous/insert_variable.sh) -n game_log -v "sudo journalctl -fn 100 -u gamed" -a

⠀Добавить команду для просмотра информации о ноде в систему в виде переменной

. <(wget -qO- https://raw.githubusercontent.com/SecorD0/utils/main/miscellaneous/insert_variable.sh) -n game_node_info -v ". <(wget -qO- https://gitlab.com/SecorD0/game/-/raw/main/node_info.sh) -l RU 2> /dev/null" -a

⠀Открыть лог

game_log

⠀Должен выглядеть примерно так

Полезные ссылки

Официальная документация


Авто-делегатор

К содержанию

Если скрипт пойдёт в третьи руки, то SecorD будет очень недоволен, а если он очень недоволен, то нужно опасаться за сохранность своей души

⠀Запросить токены с крана

!faucet game1___

⠀Адрес можно узнать в информации о ноде

game_node_info

⠀Установить Tmux

sudo apt install tmux -y

⠀Создать новое окно

tmux new -s delegator

⠀Перейти в папку с нодой

cd $HOME/.nibiru/

⠀Создать конфиг

. <(wget -qO- https://gitlab.com/SecorD0/Cosmos/-/raw/main/cosmos_redelegator.sh)

⠀Открыть конфиг с помощью блокнота MobaXterm, Nano, Vi или т.п. и отредактировать его

⠀Пример заполнения

#!/bin/bash
# Acceptable use:
# cr_daemon="/usr/bin/umeed" | text
# cr_wallet_name="$umee_wallet_name" | variable
# cr_node_tcp=`cat /root/.umee/config/config.toml | grep -oPm1 "(?<=^laddr = \")([^%]+)(?=\")"` | command output

cr_daemon="/root/go/bin/nibirud"
cr_chain_id="neuron-1"
cr_token_name="game"
cr_node_tcp=`cat /root/.nibiru/config/config.toml | grep -oPm1 "(?<=^laddr = \")([^%]+)(?=\")"`

cr_validator_address="gamevaloper1___"
cr_wallet_name="___"
cr_wallet_address="game1___"
cr_wallet_password="___"
cr_remaining_balance="1000.00"

cr_delay=3600 # how often to restart the script (in secs)
  • cr_validator_address и cr_wallet_address можно узнать из команды
game_node_info
  • cr_wallet_name — название кошелька;
  • cr_wallet_password — пароль от кошелька;
  • cr_remaining_balance — остаток монет в game;
  • cr_delay — запускаться каждые N секунд (в примере каждый час).

⠀Запустить скрипт

. <(wget -qO- https://gitlab.com/SecorD0/Cosmos/-/raw/main/cosmos_redelegator.sh) -p u

⠀Отключиться от окна сочетанием клавиш Ctrl+B, D или командой

tmux detach

⠀Повторно подключиться к окну, например для просмотра вывода или остановки скрипта, можно командой

tmux attach -t delegator

⠀Или при ручном вводе просто

tmux attach -t del

⠀Перевод 1 tkro

chain-maind tx bank send "$cro_wallet_name" "ADDRESS" 100000000basetcro \
  --from "$cro_wallet_name" \
  --chain-id testnet-croeseid-4 \
  --gas-prices 0.1basetcro \
  --node `cat "$HOME/.chain-maind/config/config.toml" | grep -oPm1 "(?<=^laddr = \")([^%]+)(?=\")"` \
  -y