I went ahead and created a modified Bitcoin client with a brand-new block chain and a few other changes (detailed below) that will make it independent of the "production" Bitcoin network.

I intend to use it to test out some code I'm writing for my next project; I don't want to accidentally break (or slowdown or otherwise interfere with) the real Bitcoin network. It should also be useful for anybody who wants to see if they can purposely break Bitcoin (for the purposes of a security audit).

+ Listen port is 18333 (instead of 8333). Uses 18332 for JSON-RPC (instead of 8332).+ Uses irc.lfnet.org channel #bitcoinTEST for bootstrapping.+ Never tries to connect to "well known" nodes for bootstrapping.+ Uses bitcoinTEST for the default data directory (e.g. ~/.bitcoinTEST on Linux, %APPDATA%/BitcoinTEST on Windows, etc)+ Uses a different ADDRESSVERSION for Bitcoin Addresses (0xff instead of 0x0), so you can't screw up copying and pasting Bitcoin addresses (if you try to use a TEST address on the production system it will tell you it's invalid; you can, however, lose TESTcoins by trying to send them to a valid production address)++ Has a brand-new block chain (with a different genesis block)++ Initial difficulty is 4 times easier than production Bitcoin++ protocol message header bytes are { 0xfa, 0xbf, 0xb5, 0xda } instead of { 0xf9, 0xbe, 0xb4, 0xd9 }

(16 July: "++" stuff added in response to the suggestions below in this thread)

I think the TEST and production GUIs don't play well with each other; at least on my Mac, I have to quit the "real" bitcoin before running TEST. That's probably an easy fix, I just need to figure out how...

How often do you get the chance to work on a potentially world-changing project?

Changing the genesis block would be a VERY good idea - better yet, change the protocol version as well. This will help avoid the possibility of the two networks merging (peers do exchange address lists...)

Yeah, change the genesis block. At the moment if someone connects a test client but gives it the data files from a real client then the real block chain will be longest and will spread throughout the test network, right?

Unfortunately, I'm not exactly sure HOW to generate a valid genesis block; I can tweak the data but need to generate a valid block hash... hmm, I see some time in gdb in my near future...

RE: changing the protocol version: Good Idea, too. Every wire protocol message starts with the bytes '{ 0xf9, 0xbe, 0xb4, 0xd9 }', I'll tweak that in the TEST code so TEST and production clients can't talk to each other even if they manage to get connected.

How often do you get the chance to work on a potentially world-changing project?

I'm working on an alternate bitcoin client and I'd like to try it on the test network. Is there a list of bootstrap hosts for the test network somewhere, so I don't need to implement an IRC client at this point?

I'm working on an alternate bitcoin client and I'd like to try it on the test network. Is there a list of bootstrap hosts for the test network somewhere, so I don't need to implement an IRC client at this point?

The TEST Faucet will be running on host: li133-197.members.linode.com(starting tomorrow, if all goes as planned). You can connect to it to bootstrap.

How often do you get the chance to work on a potentially world-changing project?

I'm working on an alternate bitcoin client and I'd like to try it on the test network. Is there a list of bootstrap hosts for the test network somewhere, so I don't need to implement an IRC client at this point?

The TEST Faucet will be running on host: li133-197.members.linode.com(starting tomorrow, if all goes as planned). You can connect to it to bootstrap.

*waves from across the rack*I couldn't wait, so I set up a node on my own linode as well. You can connect at fushizen.net. Currently my custom client isn't doing much more than maintaining a connection - figuring out how to decode and verify the block chain's probably going to be a weekend project (or two).