The Story Validator Handbook serves as an all-encompassing resource designed to guide node operators through the intricacies of deploying and managing validator nodes within the Odyssey Testnet of Story Protocol, world's first IP-focused blockchain infrastructure.
Story Protocol is the world's first IP network, making intellectual property programmable on the blockchain to empower creators and builders through tokenized creativity, unlocking new solutions for IP-related challenges.
It's a purpose-built blockchain infrastructure with three main components:
Story Network: A purpose-built L1 blockchain designed for complex data structures, providing fast, cost-efficient processing with EVM compatibility
The Programmable IP License: Enables blockchain integration of intellectual property, creating digital liquidity for IP assets
Proof-of-Creativity Protocol: Facilitates permissionless licensing, automated royalty payments, and transparent IP attribution
For an in-depth look at the Story Protocol specifications, check out the docs. Also, follow @StoryProtocol and @StoryEcostystem on X to stay updated.
The Odyssey Testnet is the final testing phase that introduces a new network with the latest protocol upgrades. With more than 100 ecosystem builders participating, the network is being thoroughly tested before the upcoming Mainnet launch.
Story's architecture separates execution and consensus clients, significantly enhancing the network's scalability and efficiency. This design eliminates the bottleneck of execution transaction throughput.
To run a node, you'll need two key components: the story-geth
execution client and the story
consensus client.
Before diving in, let's ensure we meet the prerequisites for setting up a Story node:
CPU: 4 Cores
Memory: 16 GB RAM
Disk: 500 GB SSD
Machine: Ubuntu 22.04+
Our automated setup script simplifies node deployment by handling quick installation with snapshots and Cosmovisor setup for automated updates.
During installation, you need to select which type of node to run:
Full Node: Full historical state
Pruned Node: Optimized for recent state
Use the following script to install the node:
wget -O story.sh https://api.denodes.xyz/story.sh && bash story.sh
After installation, wait for the node to fully synchronize. The command below should return false
:
curl -s localhost:26657/status | jq .result.sync_info.catching_up
Next, proceed to create a wallet and show its address:
story validator export
Your output should look similar to the following:
Note: Export your validator's derived EVM private key to the default data config directory using the
story validator export --export-evm-key
command.
After setting up your EVM wallet, get test tokens for your validator wallet from the Story Protocol Faucet and check your balance on Storyscan.
Make sure that you have a sufficient Humanity Score to claim a token.
Finally, create your validator with this command:
source $HOME/.bash_profile
story validator create --stake 1024000000000000000000 --moniker $MONIKER
Your validator node is now set up and running on Odyssey Testnet. Congratulations!
You can customize your validator profile by adding your identity, image, website, and social links on Storyscan after connecting with your EVM wallet through an imported private key.
We created a monitoring tool for Story nodes operating on the Odyssey testnet. The tool helps developers and validators track their node performance and view network statistics. Users can receive real-time alerts when attention is needed and monitor their node's performance instantly.
As part of our script, Cosmovisor is already installed on your machine, which automatically prepares you for upcoming chain upgrades.
To set up for new updates, download the new binary and use this command:
cosmovisor add-upgrade UPGRADE_NAME NEW_BINARY --force --upgrade-height UPGRADE_HEIGHT
For example, with the latest v0.13.0
update, use:
cd $HOME
wget -O story https://github.com/piplabs/story/releases/download/v0.13.0/story-linux-amd64
chmod +x story
cosmovisor add-upgrade v0.13.0 story --force --upgrade-height 858000
For node-related and developer-related updates, follow @StoryEngs and join validator community on Discord.
journalctl -fu storyd -o cat
journalctl -fu story-gethd -o cat
systemctl restart storyd story-gethd
story validator export
curl -s localhost:26657/status | jq .result.sync_info.catching_up
story validator unjail --validator-pubkey ${VALIDATOR_PUB_KEY_IN_HEX}
systemctl stop storyd story-gethd
systemctl disable storyd story-gethd
rm /etc/systemd/system/storyd.service
rm /etc/systemd/system/story-gethd.service
rm -rf $HOME/.story
Story is a purpose-built blockchain infrastructure for IP and tokenized creations. It integrates a Layer 1 blockchain with specialized protocols that handle IP-related transactions and smart contracts.
Odyssey Testnet is Story Protocol's final testing environment before mainnet launch. It features the latest protocol upgrades and allows developers, validators, and ecosystem partners to test network functionality, and smart contracts.
A Story node requires 4 CPU cores, 16GB RAM, and 500GB SSD storage space, running on Ubuntu 22.04 or higher.
Cosmovisor is an automatic upgrade manager for Story nodes that handles chain upgrades seamlessly, ensuring your validator stays up-to-date with network changes.
When this command returns false
, your node is fully synced:
curl -s localhost:26657/status | jq .result.sync_info.catching_up
You can obtain test tokens through the Story Faucet after setting up your EVM wallet and achieving a sufficient Humanity Score.
The minimum stake required to create a validator is 1024 STORY token (1024000000000000000000 in wei).
If your validator gets jailed due to downtime or misbehaviour, you can use the unjail command to restore your validator's active status once the issue is resolved.
Network upgrades are released periodically based on protocol development and community governance decisions. Stay updated through the Story discord and X.