CLONING A COIN THE EASY WAY IN ABOUT 20 MINUTES by...


SUBMITTED BY: 0bitcoincidence0

DATE: Aug. 16, 2015, 2:25 a.m.

FORMAT: Text only

SIZE: 5.4 kB

HITS: 438

  1. CLONING A COIN THE EASY WAY IN ABOUT 20 MINUTES by...
  2. CLONING A COIN THE EASY WAY IN ABOUT 20 MINUTES by iGotSpots
  3. In this guide, you will learn how to create your own altcoin without the need of mining your own genesis block, which is what gets most new-cloners hung up. So instead, I will show you a quick and easy workaround for it. You are able to achieve the same desired results with minimal effort. We will be using GorillaTeeth as our base coin, since it is the last one that uses the conventional staking system, which is a clone of MMXIV, which is a direct clone of Peercoin. Many coins have used this method and share genesis blocks; the most popular, and earliest, being Feathercoin, which shares the same genesis as Litecoin
  4. I have uploaded the GorillaTeeth source to: https://drive.google.com/file/d/0B9tCHKMNZjyYLXpjTXVMN2laNnM
  5. -
  6. Open all files in a text editor such as Notepad++ and mass-replace the coin's name. In this case, you will want to search and replace 'GorillaTeeth' and 'TEETH' with your new coin's name
  7. -
  8. /src/qt/bitcoingui.cpp:80 - Change the window title to whatever you want your coins wallet to show
  9. -
  10. /src/qt/bitcoinunits/cpp:37-39 - This is where the symbol is that will be displayed in the QT. If you mass-replaced correctly, chances are this is already changed
  11. -
  12. /src/net.cpp:1000 - Enter DNS information to allow wallets to connect to peers without needing addnodes
  13. -
  14. /src/base58.h:267 - Change the pubkey to the corresponding number for the letter you want addresses to start with
  15. -
  16. /src/checkpoints.cpp:376 - Generate a new keypair using 'makekeypair' in Variance. Put the Public Key here, save the Private Key for your automated checkpoint server
  17. -
  18. /src/protocol.h:18/19 - These are the ports your new coin will use
  19. -
  20. /src/protocol.cpp:19 - Change the pchMessage values to be unique to your coin (otherwise you will try piggybacking other chains and it will cause problems)
  21. -
  22. /src/version.cpp:14 - Change to whatever you want your buildname to be
  23. -
  24. /src/version.h:31-34: This will be the version number for your new coin in the format of 4.0.0.0
  25. -
  26. /src/main.h:31-47 - These are overall coin specs and most are written in readable english. If you don't know what one means, don't change it. Values are in satoshi format
  27. -
  28. /src/main.cpp:832 - This is where you can put whatever you want for mining rewards
  29. /src/main.cpp:838 - If you want to use conventional staking, this is where the yearly stake rate is set
  30. /src/main.cpp:853 - This is the formula for calculating stake rewards. You can make it different, leave it the same, or use flat rewards here
  31. /src/main.cpp:909 - This is the hard reset for mining rewards. You can change that to whatever block you want to keep difficulty at the mininum for. In TEETH, it is very low since we did a coin swap and needed to ensure quick mining for transfers of the swap to go through without relying on PoS. To not be accused of an instamine, it is best to just remove lines 909 and 910 altogether
  32. -
  33. /src/qt/res/icons - This is the folder that contains all the icons for your wallet
  34. /src/qt/res/images - This is the splash (loading) screen for your new coin
  35. -
  36. SETTING UP DNS SEEDS
  37. Go the the DNS settings of the domain you wish to use and add a DNS Record as follows:
  38. dnsseed.domain.com (Change to whatever is in your source)
  39. A Record
  40. 14400
  41. Point it to the IP of your dedicated node (or checkpoint server's IP)
  42. You can add multiple seeds by repeating these steps and simply changing the IP it is pointed to
  43. -
  44. SETTING UP A CHECKPOINT SERVER
  45. Create a conf file on the VPS or computer you wish to run 24/7 and add:
  46. checkpointkey=PrivateKeyFromAbove
  47. This will automatically create checkpoints every few blocks
  48. ----------
  49. You now have source code for a coin that will function just like an independent blockchain without the need of multiple compiles, replacing nNonce, Merkle, or Genesis hashes. It will work the same as if you did, but will save you the headache of trying to figure out how to do it. These steps are what most people send me questions about, which is why I am telling you how to just get around it since you are obviously looking for the fastest way to clone a coin or you wouldn't be looking for a guide anyway ;)
  50. There are a shitload more customizations and changes you can make throughout the source. My suggestion is to read through the files and simply search for whatever feature you are trying to change; most have descriptions or bookmarks commented out and will allow you to find them easily. If you run into any problems, you can PM me and if it's a step I missed, I will tell you and edit this guide, but if it's your own fault causing the error, I will most likely not respond. Therefore, if you do not get a response from me, chances are you're doing something wrong. If I answer, that means I forgot a step and will include it in the next version
  51. If you want to know how to generate your own genesis/merkle, I think shakezula's guide has that in there, but I'm not exactly sure. I know a lot of people refer others to those, so I assume those steps are in there, as well, but I could be wrong. I have used this method for several coins without issue, and 99% of the time, people don't even know how to check for unique genesis block anyway, so you might as well just ignore it
  52. Enjoy!
  53. -iGotSpots

comments powered by Disqus