Crowd Control – блокчейнге негізделген коллекциялық карта ойыны, онда ойыншылар өз карталарын жасай алады және басқа экожүйе мүшелерімен өзара әрекеттеседі. Бұл мақалада Crowd Control сынақ желісі үшін түйінді орнату және конфигурациялау туралы толық нұсқаулар берілген.
Орнату процесін жеңілдету үшін сіз автоскриптті пайдалана аласыз:
wget -O crowd https://raw.githubusercontent.com/111STAVR111/props/main/Crowd/crowd && chmod +x crowd && ./crowd
Алдымен серверде барлық қажетті бумаларды жаңарту және орнату қажет:
sudo apt update && sudo apt upgrade -y sudo apt install curl tar wget clang pkg-config libssl-dev jq build-essential bsdmainutils git make ncdu gcc chrony liblz4-tool -y
Go 1.21.6 орнату
ver="1.21.6" wget "https://golang.org/dl/go$ver.linux-amd64.tar.gz" sudo rm -rf /usr/local/go sudo tar -C /usr/local -xzf "go$ver.linux-amd64.tar.gz" rm "go$ver.linux-amd64.tar.gz" echo "export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin" >> $HOME/.bash_profile source $HOME/.bash_profile go version
Cardchaind құрастыру 11.07.24
cd $HOME && mkdir -p go/bin/ git clone https://github.com/DecentralCardGame/Cardchain wget -O Cardchaind https://github.com/DecentralCardGame/Cardchain/releases/download/v0.16.0/cardchaind chmod +x Cardchaind mv $HOME/Cardchaind /usr/local/bin Cardchaind version --long | grep -e commit -e version
Нұсқаны тексеріңіз:
version: 0.16.0 commit: be4d9f600b2274bf9dce0ec944c3ba175fa7db8e
Аты мен желі идентификаторын көрсету арқылы түйінді инициализациялаңыз:
Cardchaind init <your_node_name> --chain-id cardtestnet-12 Cardchaind config chain-id cardtestnet-12
Әмиян жасаңыз немесе қалпына келтіріңіз
Cardchaind keys add <walletname> Cardchaind keys add <walletname> --recover
Желімен синхрондау үшін генезис файлын жүктеп алыңыз:
wget -O $HOME/.cardchaind/config/genesis.json "https://cardchain.crowdcontrol.network/files/genesis.json" sha256sum $HOME/.cardchaind/config/genesis.json
Хэшті тексеріңіз:
1aedb68136b19f16edfe9c7e4e73a38f0fbc93cb13c555ca29b3493b40facc58
Ең аз газ құнын орнату, теңдестіру және басқа параметрлер
sed -i.bak -e "s/^minimum-gas-prices *=.*/minimum-gas-prices = "0.0ubpf"/;" ~/.cardchaind/config/app.toml external_address=$(wget -qO- eth0.me) sed -i.bak -e "s/^external_address *=.*/external_address = "$external_address:26656"/" $HOME/.cardchaind/config/config.toml peers="86b643ba743ccc78e6e086120d43c96f85872601@202.61.225.157:20656" sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = "$peers"/" $HOME/.cardchaind/config/config.toml
Оңтайландыру хранения данных можно настроить кесу үшін:
pruning="custom" pruning_keep_recent="1000" pruning_keep_every="0" pruning_interval="10" sed -i -e "s/^pruning *=.*/pruning = "$pruning"/" $HOME/.cardchaind/config/app.toml sed -i -e "s/^pruning-keep-recent *=.*/pruning-keep-recent = "$pruning_keep_recent"/" $HOME/.cardchaind/config/app.toml
Индексатор (необязательно)
indexer="null" && sed -i -e "s/^indexer *=.*/indexer = "$indexer"/" $HOME/.cardchaind/config/config.toml
Загрузить adrbook
wget -O $HOME/.cardchaind/config/addrbook.json "https://raw.githubusercontent.com/111STAVR111/props/main/Crowd/addrbook.json"
Создайте сервисный файл для автоматического запуска ноды:
sudo tee <<EOF >/dev/null /etc/systemd/system/Cardchaind.service [Unit] Description=Cardchain Daemon After=network-online.target [Service] User=$USER ExecStart=$(which Cardchaind) start Restart=always RestartSec=10 LimitNOFILE=65535 [Install] WantedBy=multi-user.target EOF
StateSync Crowd Testnet
SNAP_RPC=https://crowd.rpc.t.stavr.tech:443 PEERS="ec585d7fb38b67619dcb79aad90722f0eaf0faa3@crowd.peer.stavr.tech:21206" sed -i.bak -e "s/^seeds *=.*/seeds = "$SEEDS"/; s/^persistent_peers *=.*/persistent_peers = "$PEERS"/" $HOME/.cardchaind/config/config.toml LATEST_HEIGHT=$(curl -s $SNAP_RPC/block | jq -r .result.block.header.height) && BLOCK_HEIGHT=$((LATEST_HEIGHT - 100)) && TRUST_HASH=$(curl -s "$SNAP_RPC/block?height=$BLOCK_HEIGHT" | jq -r .result.block_id.hash); echo $LATEST_HEIGHT $BLOCK_HEIGHT $TRUST_HASH sed -i.bak -E "s|^(enable[[:space:]]+=[[:space:]]+).*$|1true| ; s|^(rpc_servers[[:space:]]+=[[:space:]]+).*$|1"$SNAP_RPC,$SNAP_RPC"| ; s|^(trust_height[[:space:]]+=[[:space:]]+).*$|1$BLOCK_HEIGHT| ; s|^(trust_hash[[:space:]]+=[[:space:]]+).*$|1"$TRUST_HASH"|" $HOME/.cardchaind/config/config.toml; Cardchaind tendermint unsafe-reset-all wget -O $HOME/.cardchaind/config/addrbook.json "https://raw.githubusercontent.com/111STAVR111/props/main/Crowd/addrbook.json" sudo systemctl restart Cardchaind && journalctl -u Cardchaind -f -o cat
SnapShot Testnet 5 сағатқа созылады
cd $HOME apt install lz4 sed -i.bak -E "s|^(enable[[:space:]]+=[[:space:]]+).*$|1false|" ~/.cardchaind/config/config.toml sudo systemctl stop Cardchaind cp $HOME/.cardchaind/data/priv_validator_state.json $HOME/.cardchaind/priv_validator_state.json.backup rm -rf $HOME/.cardchaind/data curl -o - -L http://crowd.snapshot.stavr.tech:1013/crowd/crowd-snap.tar.lz4 | lz4 -c -d - | tar -x -C $HOME/.cardchaind --strip-components 2 mv $HOME/.cardchaind/priv_validator_state.json.backup $HOME/.cardchaind/data/priv_validator_state.json wget -O $HOME/.cardchaind/config/addrbook.json "https://raw.githubusercontent.com/111STAVR111/props/main/Crowd/addrbook.json" sudo systemctl restart Cardchaind && journalctl -u Cardchaind -f -o cat
Теперь можно запустить ноду и следить за её статусом:
sudo systemctl daemon-reload sudo systemctl enable Cardchaind sudo systemctl restart Cardchaind && sudo journalctl -u Cardchaind -f -o cat
Когда нода синхронизирована, создайте валидатора:
Cardchaind tx staking create-validator --amount 1000000ubpf --from <walletName> --commission-max-change-rate "0.2" --commission-max-rate "1" --commission-rate "0.1" --min-self-delegation "1" --details="" --identity="" --pubkey $(Cardchaind tendermint show-validator) --moniker <validator_name> --fees 300ubpf --chain-id cardtestnet-12 -y
Удалить узел
sudo systemctl stop Cardchaind sudo rm /etc/systemd/system/Cardchaind.service sudo rm -rf $HOME/.cardchaind/ sudo rm -rf Testnet sudo rm -rf $(which Cardchaind)
Түйін күйін тексеру:
Cardchaind status 2>&1 | jq .NodeInfo Cardchaind status 2>&1 | jq .SyncInfo Cardchaind status 2>&1 | jq .ValidatorInfo
Түйін журналдарын тексеру:
sudo journalctl -fu Cardchaind -o cat
Қызмет күйін тексеру:
sudo systemctl status Cardchaind
Қызметті қайта іске қосыңыз:
sudo systemctl restart Cardchaind
Қызметті тоқтату:
sudo systemctl stop Cardchaind
Қызметті іске қосыңыз:
sudo systemctl start Cardchaind
Қайта іске қосу/өшіру/қосу
sudo systemctl daemon-reload
sudo systemctl disable Cardchaind
sudo systemctl enable Cardchaind
Сіздің құрдасыңыз
echo $(Cardchaind tendermint show-node-id)'@'$(wget -qO- eth0.me)':'$(cat $HOME/.cardchaind/config/config.toml | sed -n '/Address to listen for incoming connection/{n;p;}' | sed 's/.*://; s/".*//')
Жаңа кілт немесе кілтті қалпына келтіру
Cardchaind keys add Wallet_Name
НЕМЕСЕ
Cardchaind keys add Wallet_Name --recover
Барлық кілттерді тексеріңіз
Cardchaind keys list
Балансты тексеріңіз
Cardchaind query bank balances cc...addressjkl1yjgn7z09ua9vms259j
Кілтті жою
Cardchaind keys delete Wallet_Name
Экспорт кілті
Cardchaind keys export wallet
Кілтті импорттау
Cardchaind keys import wallet wallet.backup
Валидаторды өңдеу
Cardchaind tx staking edit-validator --new-moniker "Your_Moniker" --identity "Keybase_ID" --details "Your_Description" --website "Your_Website" --security-contact "Your_Email" --chain-id cardtestnet-11 --commission-rate 0.05 --from Wallet_Name --gas 350000 -y
Сіздің Valoper мекенжайыңыз
Cardchaind keys show Wallet_Name --bech val
Сіздің Валькон мекенжайыңыз
Cardchaind tendermint show-address
Валидаторыңыз туралы ақпарат
Cardchaind query staking validator ccvaloperaddress......
Түрме туралы мәлімет
Cardchaind query slashing signing-info $(Cardchaind tendermint show-validator)
Түрмеден босату
Cardchaind tx slashing unjail --from Wallet_name --chain-id cardtestnet-11 --gas 350000 -y
Белсенді валидаторлар тізімі
Cardchaind q staking validators -oj --limit=3000 | jq '.validators[] | select(.status=="BOND_STATUS_BONDED")' | jq -r '(.tokens|tonumber/pow(10; 6)|floor|tostring) + " t " + .description.moniker' | sort -gr | nl
Өшірілген валидаторлардың тізімі
Cardchaind q staking validators -oj --limit=3000 | jq '.validators[] | select(.status=="BOND_STATUS_UNBONDED")' | jq -r '(.tokens|tonumber/pow(10; 6)|floor|tostring) + " t " + .description.moniker' | sort -gr | nl
Кілтіңіз валидаторға сәйкес келетінін тексеру ( Win
- жақсы, Lose
- нашар)
VALOPER=Enter_Your_valoper_Here [[ $(Cardchaind q staking validator $VALOPER -oj | jq -r .consensus_pubkey.key) = $(Cardchaind status | jq -r .ValidatorInfo.PubKey.value) ]] && echo -e "nYou winn" || echo -e "nYou losen"
Барлық валидаторлардан барлық сыйақыларды алып тастаңыз
Cardchaind tx distribution withdraw-all-rewards --from Wallet_Name --chain-id cardtestnet-11 --gas 350000 -y
Валидатордан барлық төлемдерді алып тастаңыз
Cardchaind tx distribution withdraw-rewards ccvaloper1a........ --from Wallet_Name --gas 350000 --chain-id=cardtestnet-11--commission -y
Токендерді валидаторға жіберіңіз
Cardchaind tx staking delegate ccvalpoer........ "100000000"ubpf --from Wallet_Name --gas 350000 --chain-id=cardtestnet-11 -y
Токендерді басқа валидаторға тапсырыңыз
Cardchaind tx staking delegate ccvalpoer........ "100000000"ubpf de --from Wallet_Name --gas 350000 --chain-id=cardtestnet-11 -y
Токендерді басқа валидаторға тасымалдау
Cardchaind tx staking redelegate ccvalpoer........ ccvalpoer........ "100000000"ubpf --from Wallet_Name --gas 350000 --chain-id=cardtestnet-11 -y
Токендерді валидатордан немесе басқа валидатордан ажыратыңыз
Cardchaind tx staking unbond ccvalpoer........ "100000000"ubpf --from Wallet_Name --gas 350000 --chain-id=cardtestnet-11 -y Cardchaind tx staking unbond ccvalpoer........ "100000000"ubpf --from Wallet_Name --gas 350000 --chain-id=cardtestnet-11 -y
Токендерді әмияндар арасында тасымалдау
Cardchaind tx bank send ccaddress............ ccaddress........... "1000000000"ubpf --gas 350000 --chain-id=cardtestnet-11 -y
Барлық ұсыныстарды көру
Cardchaind query gov proposals
Арнайы ұсынысты көру
Cardchaind query gov proposal 1
«Иә» деп дауыс беріңіз
Cardchaind tx gov vote 1 yes --from Wallet_Name --gas 350000 --chain-id=cardtestnet-11 -y
«қарсы» дауыс беру
Cardchaind tx gov vote 1 no --from Wallet_Name --gas 350000 --chain-id=cardtestnet-11 -y
Қалыс қалу
Cardchaind tx gov vote 1 abstain --from Wallet_Name --gas 350000 --chain-id=cardtestnet-11 -y
«Жоқ» деп дауыс беру (ветомен)
Cardchaind tx gov vote 1 no_with_veto --from Wallet_Name --gas 350000 --chain-id=cardtestnet-11 -y
IBC трансфері
Cardchaind tx ibc-transfer transfer transfer channel-2 Your_OSMOaddress............ "100000"ubpf --from Your_Crowd_Wallet_Name ---gas 350000 --chain-id=cardtestnet-11 -y