Skip to content

Create a local testnet for fast, private testing

Mariano Sorgente edited this page Sep 29, 2021 · 6 revisions
  1. Stop all chia processes. Check that they have stopped with ps -ef | grep chia
  2. Create a new chia root using export CHIA_ROOT="~/.chia/my_testnet", then chia init. Don't forget to export CHIA_ROOT, or prefix your chia commands with CHIA_ROOT="~/.chia/my_testnet" if you want to run on my_testnet when starting a new terminal.
  3. Create a new entry in config.yaml with a different GENESIS_CHALLENGE, and reduced DIFFICULTY_CONSTANT_FACTOR. 2^67 constant factor is around 110PiB assuming a fast timelord. So if you have around 110GiB, you can set it to 2 ^ 47. Decrease SUB_SLOT_ITERS_STARTING to something like 2^23 if you are using a slow computer. Decrease PLOT_FILTER if you want to have more proof checks per signage point.
  4. Make sure to add my_testnet to all places that need it, like network_overrides.config, and selected_network
  5. Change the introducer URLs to point to localhost so you don't contact the real ones
  6. Do sh install-timelord.sh
  7. Run the system with chia start all
  8. If you have installed the gui, run (cd chia-blockchain-gui && npm run electron &)

You can generate a new genesis challenge by running python, and entering the following commands:

from secrets import token_bytes
print(token_bytes().hex())
Clone this wiki locally