Hi!
I've created this guide for those who want to run a Validator node on a Windows PC without buying a server. If anything is unclear, doesn't work, or have any questions, feel free to leave a comment! I'll be happy to help.
Preparing
Type ‘powershell’ on windows search bar
Run ‘Windows PowerShell’ as administrator

run
wsl --install

This will install ubuntu by default
Restart your computer after installation
Install Docker Desktop
Download and install Docker Desktop from
https://docs.docker.com/desktop/setup/install/windows-install/

During installation, ensure the "Use WSL 2 instead of Hyper-V" option is selected

After installation, open Docker Desktop , Click Skip so you don’t have sign up docker account

and go to Settings > Resources > WSL Integration
Enable integration with your installed WSL distro - Ubuntu

Setting Up the Validator
Open your WSL terminal
Search for "Ubuntu" in the Start menu and click Ubuntu or run wsl in PowerShell


Get node files
Option 1 (Recommended)
Copy and paste does not work. Be careful the typo and space!
run
bash -c "$(curl -s https://raw.githubusercontent.com/TheSPSDAO/SPS-Validator/refs/tags/vlatest/install.sh)"
You will be asked those questions
Do you want to use a production prefix or qa prefix?
-> type 1
Enter your the hive account name
-> type your hive account
Enter your the hive posting key
-> skip it for now We will put your posting key later. Just enter or type random word like 1111 for now
Do you want to turn on block pruning?
-> type y
Are you sure you want to destory?
-> type y

run
cd SPS-Validator

Option 2 (Skip this if you done with option 1)
run (change the mail with your actual email)
ssh-keygen -t ed25519 -C "[email protected]"
It asks three questions you can just enter three times for the questions.
→ enter → enter → enter

run
cat ~/.ssh/id_ed25519.pub
drag & select the key and copy the key with ctrl+C

Sign up and log in github.com
After login github, go setting

SSH and GPG keys → New SSH key

paste the key and add ssh key


run
git clone --branch vlatest --single-branch [email protected]:TheSPSDAO/SPS-Validator.git
yes

run
cd SPS-Validator

'Get node files' part option 1 or option 2 done!
Set up environment variables
Edit the configuration file
run
cp .env-example .env
Use a txt editor to modify the .env file:
run
nano .env
- Important settings to configure:
VALIDATOR_ACCOUNT: Your Hive account nameVALIDATOR_KEY: Your Hive posting key- If you just want license rewards, set
DB_BLOCK_RETENTION=432000to keep your database size small if you’re not aiming Top Validators. Recommend for most people.


save the updated .env file
ctrl + x → y → enter

Build the validator
run
./run.sh build
- This will deploy the database, run migrations, and download/deploy the snapshot
- This process may take some time


Start the validator
run
./run.sh start all
This starts both the validator and the management UI
This process may take some time

You need to wait this number become 0 to start your node validate block

Congrat! Now your validator node is running!
Register Your Node
Once your node is fully synced (Blocks to head: 0),
Navigate to the management UI at http://localhost:8888/
Go to the "Manage Validator Nodes" section

You can skip API url, Post URL, Reward account
After registration and once your node synced the block (Blocks to head: 0), set your node to "active"
Stake Licenses for Rewards
To earn LICENSE rewards:
Go to https://splinterlands.com/dashboard/licenses
Click Activate and Stake Licenses


Congrat! Now your validator node is running and you are getting License block reward! 🎉
Keeping the Node Running
To keep the node running continuously:
Make sure your WSL instance stays running
- WSL might shut down with some reason like a system restart
After a Windows restart:
- Open WSL terminal
- Navigate to your SPS-Validator directory
- Check if the validator is running:
./run.sh logs
- If not running, start it again:
./run.sh start all
Set Windows to auto-start Docker Desktop
- This will ensure Docker is available after restarts
- Open Docker Desktop > Settings > General > Start Docker Desktop when you log in
Consider using a WSL startup script to auto-start the validator
- Create a startup script in your home directory:
echo '#!/bin/bash
cd ~/SPS-Validator
./run.sh start all' > ~/start-validator.sh
chmod +x ~/start-validator.sh
- Create a startup script in your home directory:

- Add this to your Windows startup by creating a .vbs script:
- open notepad app on windows -> paste this
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run "wsl -d Ubuntu -e /bin/bash -c ~/start-validator.sh", 0, True
Save this as a .vbs file and place it in your Windows Startup folder (Win+R, then type shell:startup)
Common Commands for Management
./run.sh stop: Stops all services./run.sh start: Starts validator and database./run.sh start all: Starts validator, database, and UI./run.sh logs: Shows the validator logs./run.sh rebuild_service validator: Rebuilds the validator to apply new environment variables./run.sh snapshot: Creates a backup of your database
You just made the SPS chain stronger and more decentralized! 💪
If this helps, please consider voting for my node to support.
https://monstermarket.io/validators?validator=hanv
Thank you!
Thanks for this @hanv. I'm going to give this a go later in the week just to build up some knowledge, I'll let you know how I get on.
You can do it! It’ll be a good experience to set up and run a node while learning new things. Good luck! I’m curious to see how it turns out, so let me know the results. Thank you for your vote on my node! @abh12345 !! 🙏
Wow! This is all gibberish to me, but I would like to run my own node so that I'm not staking on anyone else. Here we go...
There might be some hurdles when you first start, but you'll succeed in the end! Good luck!