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 "your-email@example.com"
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 git@github.com: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!