Crowd Control er et blokkjedespill med samlekort der spillerne kan lage sine egne kort og samhandle med andre medlemmer av økosystemet. Denne artikkelen gir detaljerte instruksjoner om hvordan du installerer og konfigurerer en node for Crowd Control-testnettet.
Et autoscript kan brukes for å forenkle installasjonsprosessen:
wget -O crowd https://raw.githubusercontent.com/111STAVR111/props/main/Crowd/crowd && chmod +x crowd && ./crowd
Først må du oppdatere og installere alle nødvendige pakker på serveren:
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
Installere 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 build.
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
Sjekk versjonen:
version: 0.16.0
commit: be4d9f600b2274bf9dce0ec944c3ba175fa7db8e
Initialiser noden ved å angi navn og nettverks-ID:
Cardchaind init <your_node_name> --chain-id cardtestnet-12
Cardchaind config chain-id cardtestnet-12
Opprette eller gjenopprette en lommebok
Cardchaind keys add <walletname>
Cardchaind keys add <walletname> --recover
Last ned genesis-filen for å synkronisere med nettverket:
wget -O $HOME/.cardchaind/config/genesis.json "https://cardchain.crowdcontrol.network/files/genesis.json"
sha256sum $HOME/.cardchaind/config/genesis.json
Kontroller hashen:
1aedb68136b19f16edfe9c7e4e73a38f0fbc93cb13c555ca29b3493b40facc58
Konfigurere minimum gasskostnad, peers og andre innstillinger
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
Beskjæring kan konfigureres for å optimalisere datalagringen:
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
Indekser (valgfritt)
indexer="null" &&
sed -i -e "s/^indexer *=.*/indexer = "$indexer"/" $HOME/.cardchaind/config/config.toml
Last ned addrbook
wget -O $HOME/.cardchaind/config/addrbook.json "https://raw.githubusercontent.com/111STAVR111/props/main/Crowd/addrbook.json"
Opprett en tjenestefil for å starte noden automatisk:
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 oppdateres hver 5. time
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
Nå kan du starte noden og overvåke dens status:
sudo systemctl daemon-reload
sudo systemctl enable Cardchaind
sudo systemctl restart Cardchaind && sudo journalctl -u Cardchaind -f -o cat
Når noden er synkronisert, oppretter du en validator:
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
Slett node
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)
Sjekke nodens status:
Cardchaind status 2>&1 | jq .NodeInfo
Cardchaind status 2>&1 | jq .SyncInfo
Cardchaind status 2>&1 | jq .ValidatorInfo
Sjekke nodelogger:
sudo journalctl -fu Cardchaind -o cat
Kontroller tjenestestatus:
sudo systemctl status Cardchaind
Start tjenesten på nytt:
sudo systemctl restart Cardchaind
Stopp tjeneste:
sudo systemctl stop Cardchaind
Start tjeneste:
sudo systemctl start Cardchaind
Start på nytt/deaktiver/aktiver/aktiver
sudo systemctl daemon-reload
sudo systemctl disable Cardchaind
sudo systemctl enable Cardchaind
Din kollega
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/".*//')
Ny nøkkel eller gjenoppretting av nøkkel
Cardchaind keys add Wallet_Name
ELLER
Cardchaind keys add Wallet_Name --recover
Sjekk alle nøkler
Cardchaind keys list
Sjekk saldoen
Cardchaind query bank balances cc...addressjkl1yjgn7z09ua9vms259j
Slett nøkkel
Cardchaind keys delete Wallet_Name
Eksporter nøkkel
Cardchaind keys export wallet
Importer nøkkel
Cardchaind keys import wallet wallet.backup
Rediger validator
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
Din Valoper-adresse
Cardchaind keys show Wallet_Name --bech val
Din Valcon-adresse
Cardchaind tendermint show-address
Informasjon om validatoren din
Cardchaind query staking validator ccvaloperaddress......
Informasjon om fengsel
Cardchaind query slashing signing-info $(Cardchaind tendermint show-validator)
Unjail
Cardchaind tx slashing unjail --from Wallet_name --chain-id cardtestnet-11 --gas 350000 -y
Liste over aktive validatorer
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
Liste over deaktiverte validatorer
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
Sjekk at nøkkelen din stemmer overens med validatoren(Win
- bra, Lose
- dårlig)
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"
Skriv ut alle belønninger fra alle validatorer
Cardchaind tx distribution withdraw-all-rewards --from Wallet_Name --chain-id cardtestnet-11 --gas 350000 -y
Trekk ut alle provisjoner fra validatoren din
Cardchaind tx distribution withdraw-rewards ccvaloper1a........ --from Wallet_Name --gas 350000 --chain-id=cardtestnet-11--commission -y
Delegere tokens til din validator
Cardchaind tx staking delegate ccvalpoer........ "100000000"ubpf --from Wallet_Name --gas 350000 --chain-id=cardtestnet-11 -y
Delegere tokens til en annen validator
Cardchaind tx staking delegate ccvalpoer........ "100000000"ubpf de --from Wallet_Name --gas 350000 --chain-id=cardtestnet-11 -y
Overfør tokens til en annen validator
Cardchaind tx staking redelegate ccvalpoer........ ccvalpoer........ "100000000"ubpf --from Wallet_Name --gas 350000 --chain-id=cardtestnet-11 -y
Frakoble tokens fra validatoren din eller en annen validator
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
Overfør tokens mellom lommebøker
Cardchaind tx bank send ccaddress............ ccaddress........... "1000000000"ubpf --gas 350000 --chain-id=cardtestnet-11 -y
Se alle tilbud
Cardchaind query gov proposals
Se et spesifikt forslag
Cardchaind query gov proposal 1
Stem for forslaget
Cardchaind tx gov vote 1 yes --from Wallet_Name --gas 350000 --chain-id=cardtestnet-11 -y
Stem mot
Cardchaind tx gov vote 1 no --from Wallet_Name --gas 350000 --chain-id=cardtestnet-11 -y
Avstår fra å stemme
Cardchaind tx gov vote 1 abstain --from Wallet_Name --gas 350000 --chain-id=cardtestnet-11 -y
Stem mot (med veto)
Cardchaind tx gov vote 1 no_with_veto --from Wallet_Name --gas 350000 --chain-id=cardtestnet-11 -y
IBC-overføring
Cardchaind tx ibc-transfer transfer transfer channel-2 Your_OSMOaddress............ "100000"ubpf --from Your_Crowd_Wallet_Name ---gas 350000 --chain-id=cardtestnet-11 -y