Dungeon Games❖Dungeon
DashboardCastleAccount
Validator Oath Hall
Dungeon Chain command console
Oath HallRun a NodeStake DGNLedgerBlocksGovernanceBridgeContracts
Trade
SwapStakeBuy DGN
Explorer
DEX ScreenerBlocksTransactionsValidatorsConsensusGovernanceBridgesDEX PoolsTokensAnalyticsToken FactoryTop AccountsContractsChain StatsDesktop App
Ecosystem
NFT MarketplaceSky MercenariesDAOLeaderboard
Game
LeaderboardGuildsBattle PassGame Guide
Docs
WhitepaperRoadmapFAQ
Explorer index

OPERATOR RUNBOOK

From a fresh Linux host to a synced dungeon-1 validator, with the live software baseline attached.

Read the chain before touching the machine

This baseline was checked against the live Dungeon node and the published v8 release. Re-check the release page and public RPC before every installation; upgrade plans change, copied commands do not.

Network
dungeon-1
Active binary
v8.0.0
SDK
Cosmos SDK 0.53.6
Verified
August 8, 2026
Infrastructure record

dungeon-1 Node and Validator Guide

Run a dungeon-1 Validator

This runbook takes a fresh Linux host to a state-synced full node and then to a registered validator. It was checked against the live chain on August 8, 2026.

Release gate: dungeon-1 is currently running dungeond v8.0.0. The on-chain plan schedules v9 at height 19,252,800. Install v8 as the current binary and stage the published v9 binary under Cosmovisor before starting. Do not run v9 early.


1. Verified network baseline

FieldLive value
Chain IDdungeon-1
Native tokenudgn (display: DGN)
Active binarydungeond v8.0.0
Cosmos SDKv0.53.6
CometBFT dependencyv0.38.21
Applied v8 height17,100,000
Scheduled planv9 at height 19,252,800
Public RPChttps://rpc.dungeongames.io:443
Default portsP2P 26656, RPC 26657, gRPC 9090, API 1317

Before installation, confirm the public RPC still reports the expected network and software plan:

RPC="https://rpc.dungeongames.io:443"
curl -fsSL "$RPC/status" | jq '.result.node_info.network, .result.sync_info.latest_block_height'

The network must be dungeon-1. If the chain has passed the scheduled v9 height, stop and use the release selected by the live upgrade state rather than this dated baseline.


2. Host requirements

  • Linux x86_64; Ubuntu 22.04 LTS is the tested baseline
  • 8 CPU / 16 GB RAM minimum; 32 GB RAM recommended
  • 500 GB or larger NVMe SSD
  • curl, jq, tar, and sha256sum
  • A dedicated unprivileged service account

Keep the validator key and account key out of shell history, backups, and chat. A sentry/full-node topology is preferable when operating meaningful stake.


3. Install the active v8 binary

Use the published Dungeon v8.0.0 release. Verify the archive before installing it.

mkdir -p ~/dungeond-releases/v8 && cd ~/dungeond-releases/v8

curl -fLO https://github.com/Crypto-Dungeon/dungeonchain/releases/download/v8.0.0/dungeond-v8.0.0-linux-amd64.tar.gz
echo "ee64e0f1b5e4fcdf62bc015db8e3a523a803930f0104e393f41ec9e5e942ece1  dungeond-v8.0.0-linux-amd64.tar.gz" | sha256sum -c

tar -xzf dungeond-v8.0.0-linux-amd64.tar.gz
chmod 0755 dungeond
./dungeond version --long | grep -E '^(version|cosmos_sdk_version|commit):'

Expected active version: 8.0.0, Cosmos SDK v0.53.6. Do not continue if the checksum or version differs.


4. Initialize the node

MONIKER="your-moniker"
HOME_DIR="$HOME/.dungeonchain"

./dungeond init "$MONIKER" --chain-id dungeon-1 --home "$HOME_DIR"

curl -fsSL https://play.dungeongames.io/snapshots/dungeon-1-genesis.json \
  -o "$HOME_DIR/config/genesis.json"

echo "ef1bf7b761fddb15284b8fd45817de94e3ad30bf9460c5acd82c71268511a2e6  $HOME_DIR/config/genesis.json" | sha256sum -c

The genesis checksum is a hard gate. If it fails, delete the downloaded file and stop.


5. Configure state sync

Dungeon publishes a bootstrap script that derives a fresh trust height and hash from the public RPC and configures the current seed set. Download it, inspect it, then run it. The script changes config.toml; it does not install or select a binary.

curl -fsSL https://play.dungeongames.io/snapshots/dungeon-1-statesync.sh \
  -o /tmp/dungeon-1-statesync.sh

less /tmp/dungeon-1-statesync.sh
DAEMON_HOME="$HOME/.dungeonchain" bash /tmp/dungeon-1-statesync.sh

After it runs, verify that state sync is enabled and that the trust height and hash are populated:

grep -A10 '^\[statesync\]' "$HOME/.dungeonchain/config/config.toml"
grep '^seeds =' "$HOME/.dungeonchain/config/config.toml"

Never reuse an old trust point from a copied guide. If state sync stalls because peers have rolled past it, stop the node, reset the data directory, and rerun the script to derive a fresh point.


6. Configure gas and pruning

In ~/.dungeonchain/config/app.toml:

minimum-gas-prices = "0udgn"
pruning = "custom"
pruning-keep-recent = "100"
pruning-interval = "10"

The live Dungeon node currently uses 0udgn as its local minimum gas price. Operators may choose a higher local admission floor, but should understand that it changes which transactions their node accepts into its own mempool.


7. Configure Cosmovisor and stage v9

Install Cosmovisor and place v8 in the current slot:

go install cosmossdk.io/tools/cosmovisor/cmd/cosmovisor@latest

mkdir -p "$HOME/.dungeonchain/cosmovisor/upgrades/v8/bin"
cp ~/dungeond-releases/v8/dungeond "$HOME/.dungeonchain/cosmovisor/upgrades/v8/bin/dungeond"
ln -sfn "$HOME/.dungeonchain/cosmovisor/upgrades/v8" "$HOME/.dungeonchain/cosmovisor/current"

Then stage the published v9.0.0 release. The on-chain plan and release both identify this exact static binary and checksum:

mkdir -p "$HOME/.dungeonchain/cosmovisor/upgrades/v9/bin"

curl -fsSL https://github.com/Crypto-Dungeon/dungeonchain/releases/download/v9.0.0/dungeond \
  -o "$HOME/.dungeonchain/cosmovisor/upgrades/v9/bin/dungeond"

echo "aa1a32201d4bfc3161130759c309d9e3314936314c8a87b7313110d3d6dc190c  $HOME/.dungeonchain/cosmovisor/upgrades/v9/bin/dungeond" | sha256sum -c
chmod 0755 "$HOME/.dungeonchain/cosmovisor/upgrades/v9/bin/dungeond"
"$HOME/.dungeonchain/cosmovisor/upgrades/v9/bin/dungeond" version --long | grep -E '^(version|cosmos_sdk_version|commit):'

Expected staged version: 9.0.0, Cosmos SDK v0.53.7. The v9 release is statically linked and does not require an external libwasmvm at runtime.

Do not point cosmovisor/current at v9. Cosmovisor selects upgrades/v9/bin/dungeond when the on-chain plan reaches its upgrade height.


8. Install the systemd unit

Create /etc/systemd/system/dungeond.service:

[Unit]
Description=dungeon-1 node (Cosmovisor)
After=network-online.target

[Service]
User=YOUR_USER
ExecStart=/home/YOUR_USER/go/bin/cosmovisor run start --home /home/YOUR_USER/.dungeonchain
Restart=always
RestartSec=3
LimitNOFILE=65535
Environment="DAEMON_NAME=dungeond"
Environment="DAEMON_HOME=/home/YOUR_USER/.dungeonchain"
Environment="DAEMON_ALLOW_DOWNLOAD_BINARIES=false"
Environment="DAEMON_RESTART_AFTER_UPGRADE=true"

[Install]
WantedBy=multi-user.target

Replace YOUR_USER with the actual unprivileged service account, then:

sudo systemctl daemon-reload
sudo systemctl enable --now dungeond
sudo journalctl -u dungeond -f

DAEMON_ALLOW_DOWNLOAD_BINARIES=false is intentional: the operator verifies and stages every binary before the upgrade.


9. Verify synchronization

dungeond status --home "$HOME/.dungeonchain" | jq '.sync_info'

Do not create a validator until all of these are true:

  • network is dungeon-1
  • catching_up is false
  • local height is advancing with the public RPC
  • the node has stable peers
  • v9 is staged and its checksum passed

Compare local and public height:

LOCAL=$(dungeond status --home "$HOME/.dungeonchain" | jq -r '.sync_info.latest_block_height')
PUBLIC=$(curl -fsSL https://rpc.dungeongames.io/status | jq -r '.result.sync_info.latest_block_height')
printf 'local=%s public=%s\n' "$LOCAL" "$PUBLIC"

10. Create the validator transaction

The active SDK requires a JSON document for create-validator; the retired flag-only form is not valid.

dungeond keys add validator --home "$HOME/.dungeonchain"
PUBKEY=$(dungeond tendermint show-validator --home "$HOME/.dungeonchain")

jq -n \
  --argjson pubkey "$PUBKEY" \
  --arg moniker "$MONIKER" \
  '{
    pubkey: $pubkey,
    amount: "1000000udgn",
    moniker: $moniker,
    identity: "",
    website: "",
    security: "",
    details: "",
    "commission-rate": "0.05",
    "commission-max-rate": "0.20",
    "commission-max-change-rate": "0.01",
    "min-self-delegation": "1"
  }' > "$HOME/validator.json"

cat "$HOME/validator.json" | jq .

Fund the operator account, verify the JSON and commission terms, then simulate before broadcasting:

dungeond tx staking create-validator "$HOME/validator.json" \
  --from validator \
  --chain-id dungeon-1 \
  --home "$HOME/.dungeonchain" \
  --gas auto --gas-adjustment 1.5 --fees 5000udgn \
  --dry-run

Remove --dry-run only after reviewing the simulation and account address. Do not add -y until the final transaction has been manually reviewed.


11. Post-registration checks

After broadcast, save the transaction hash and verify the chain record:

dungeond query tx YOUR_TX_HASH --node https://rpc.dungeongames.io:443
dungeond query staking validators --node https://rpc.dungeongames.io:443 -o json \
  | jq '.validators[] | select(.description.moniker == "YOUR_MONIKER")'

Then monitor:

  • missed blocks and signing status
  • jailed state
  • peer count and height drift
  • disk growth
  • Cosmovisor upgrade readiness
  • validator commission after v9 activates its 5% minimum floor

Support

  • Dungeon validator releases
  • Dungeon Explorer validator records
  • Dungeon community

When requesting help, share the chain ID, binary version --long, latest local height, catching_up, and the exact error. Never share seed phrases, private validator keys, or private peer addresses.

Treat release hashes, trust points, and validator transaction output as evidence. Never copy a future upgrade plan into a live-node command.