Bitcoin Forum
April 30, 2024, 10:43:47 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 2 3 4 5 6 7 [8] 9 10 11 »  All
  Print  
Author Topic: *** Complete Guide on How to Create a New Alt Coin ***  (Read 165866 times)
watchbay30
Member
**
Offline Offline

Activity: 70
Merit: 10


View Profile
November 25, 2017, 03:01:20 PM
 #141

very good writeup, funny thing is everyone on P1 is either legendary or hero
thats how old this post is
I can't see a similar topic like this that is more updated than January 2015. I bet people aren't interested now in making a new alt coin, they just buy and sell alt coins now. They are more on trading now. There are tons of alt coins out there that are unsuccessful and just become dump coins.
1714473827
Hero Member
*
Offline Offline

Posts: 1714473827

View Profile Personal Message (Offline)

Ignore
1714473827
Reply with quote  #2

1714473827
Report to moderator
1714473827
Hero Member
*
Offline Offline

Posts: 1714473827

View Profile Personal Message (Offline)

Ignore
1714473827
Reply with quote  #2

1714473827
Report to moderator
Remember that Bitcoin is still beta software. Don't put all of your money into BTC!
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1714473827
Hero Member
*
Offline Offline

Posts: 1714473827

View Profile Personal Message (Offline)

Ignore
1714473827
Reply with quote  #2

1714473827
Report to moderator
dale1075
Member
**
Offline Offline

Activity: 252
Merit: 37


View Profile
November 26, 2017, 06:32:28 AM
 #142

Interesting writeup. Makes me wonder how many are doing this right now (creating Alt Coin) and release it in the coming days.

▶▶  BTCitcoin 2  ◀◀    ⚡ Scalable Bitcoin Fork with instant verified payments ⚡
░░░░▒▒▒▓▓▓████████████████████████████████████████████████▓▓▓▒▒▒░░░░
Low Fees ✲ ✲ Truly Anonymous TransactionsJoin the discussion thread
AltCreators
Full Member
***
Offline Offline

Activity: 150
Merit: 100


Official AltCreator Account


View Profile
November 28, 2017, 05:18:43 PM
 #143

Great Guide.

Helped me with the genesis block mining part.
turboblade
Member
**
Offline Offline

Activity: 115
Merit: 10


View Profile
December 08, 2017, 11:28:20 PM
 #144

Any help with masternode code?
QpeepBounties
Newbie
*
Offline Offline

Activity: 50
Merit: 0


View Profile
December 08, 2017, 11:49:40 PM
 #145

We could enjoy also some more recent guide on who to make more complex coins.
cvan
Member
**
Offline Offline

Activity: 125
Merit: 10


View Profile
December 09, 2017, 12:05:16 AM
 #146

I honestly think it's easier to go with a project like Polymath that is building a platform for people to launch their own security token projects. they even have crypto-friendly lawyers.

Their demo: https://polymath.network/wizard/

https://polymath.network/
jdole
Member
**
Offline Offline

Activity: 147
Merit: 10


View Profile
December 12, 2017, 02:28:33 PM
 #147

Great Guide.

Helped me with the genesis block mining part.
good! Grin
whiteseven
Member
**
Offline Offline

Activity: 171
Merit: 12


View Profile
December 13, 2017, 03:08:07 PM
 #148

Wow this is awesome! I was half expecting to see "Download Waves" Make new token! But this is super legit.
Dejan Milosevic
Newbie
*
Offline Offline

Activity: 1
Merit: 0


View Profile
December 27, 2017, 07:17:05 PM
 #149

First of all, thank you for your detailed tutorial.

I am new to crypto currencies and i want to create my own coin but not for the market, but for payment processing in small festival.

I successfully cloned and created 4 nodes of litecoin-core, and changed everything to match with my coin, but i am stuck for some things now.

I have several questions:

I used https://github.com/tiagosh/AltcoinGenerator to bootstrap everything

1. I am using -regtest parameter and i can successfully add blocks in each node and earn coins. First of all, how nodes know to communicate? Is there main node which is updating every other node in network? How current nodes know about new nodes?

2. Are that 4 nodes actually miners? How can I setup them to automatically mine and processing transactions, because i don't want payment platform to be decentralized, but only built on top of litecoin so it can scale to decentralized model if needed. Festival is small event and there are about 5000 people there which should be able to have wallets and make transactions, so i suppose it would need big number of miners?

3. How can i build mobile wallet? First of all, do you need actual node for every wallet? How can I create wallets which only can pay without actual nodes? And how to create mobile wallet which can send and pay? Is this possible with JSON-RPC api which exists in litecoin-core?

Applications should be SO SIMPLE, only to have qr code of wallet to receive, and also possibility to scan other qr code wallet and to send there.

So my main understandings are:

How nodes know about each other, is there centralizes api node?
How wallets know about nodes, where mobile wallet is sending request for making payment?
Can I make simple HTML5 and JAVASCRIPT wallet applications? It doesn't need to have whole blockchain on it just to be able to make transactions.

For last one, my basic idea is to have one node ( but dont know how to communicate with it? RPC-API? What is endpoint? server-ip:port? )
which is used for all payments or maybe to have node per wallet, but it will be on server and simple app will just communicating with it via some protocol? Is this secure? Are there flaws for this system? I tried to find litecoin-core for mobile but there is not.

So, somebody will ask me why just you dont build centralized database payment system instead?

Because I want to learn about blockchain step by step
Because it already have great code base for secure ledger balance processing which i need and i want to try working with it.

Sorry if my post is confused, but i have so much questions and need to start somewhere.

Thanks
WasTriffin
Newbie
*
Offline Offline

Activity: 38
Merit: 0


View Profile
December 27, 2017, 08:00:31 PM
 #150

Isn't custom coin creation one of the major features of Bancor BNK ??

https://bitcointalk.org/index.php?topic=1789222.0

Read the bottom portion of the OP on the above [ANN] for BNK

WasTriffin ..
mark_443
Newbie
*
Offline Offline

Activity: 2
Merit: 0


View Profile
January 07, 2018, 08:10:11 PM
 #151

I am planning to create a New AltCoin Based on LiteCoin or Ethereum

1. Planning to hire some Developers - Need someone to Code the New Altcoin - will be paid Hourly or Stake in Company Shares
2. Have a Developer already who is ready to Design Website, Android/iOs Apps
3. Need to understand if i need someone to design the mining software so we can put it into a Android App and Send it to the List of Interested Individuals who are ready to Mine
4. Hired Couple of Guys for marketing and sales
5. have a set of Inverstors who are ready to Invest in more than 100K USD to maintain the software and upgrade costs to keep the COIN Running for a period of  time into Future

Interested People Please PM Me we can work out % of the Company Shares or Hourly Rate or Fixed Rate to Complete the design. I have already Registered the Company and Everything.


ssanjeewa
Newbie
*
Offline Offline

Activity: 18
Merit: 0


View Profile
January 17, 2018, 03:58:25 AM
 #152

is there available any video tutorials.
Joe1987
Jr. Member
*
Offline Offline

Activity: 175
Merit: 1


View Profile
January 21, 2018, 07:44:54 PM
 #153

How to change algorythm for fork? Or how to create new algorythm? can anyone explain me how to do this?
gregor71
Newbie
*
Offline Offline

Activity: 52
Merit: 0


View Profile
January 21, 2018, 07:46:22 PM
 #154

Hey. I'm training to create a coin based on DashCoin with masternodes. I generated GenesisBlock and everything. After the launch, I get in the logs:

Quote
2017-10-09 16:55:58 CMasternodeSync::ProcessTick -- nTick 2593 nRequestedMasternodeAssets 1 nRequeste
dMasternodeAttempt 0 nSyncProgress 0.000000
2017-10-09 16:56:04 CMasternodeSync::ProcessTick -- nTick 2599 nRequestedMasternodeAssets 1 nRequeste
dMasternodeAttempt 0 nSyncProgress 0.000000
2017-10-09 16:56:10 CMasternodeSync::ProcessTick -- nTick 2605 nRequestedMasternodeAssets 1 nRequeste
dMasternodeAttempt 0 nSyncProgress 0.000000
I understand the mistake in the absence of the master. But how can I run it without having coins?

Perhaps it is necessary for the first time to turn off the master programs altogether?

In what direction should I move? Any ideas?


Hey buddy, did you end up getting this to work? And if so, how did you solve it?

We have disabled the sync for the duration of the first block
wsxdrfv
Jr. Member
*
Offline Offline

Activity: 405
Merit: 5


View Profile WWW
January 24, 2018, 05:52:56 AM
 #155

Hi.

I also want to make my own coin.

Is this tutorial still can follow and works well?

I am concerned original posted so long ago.

wassimo
Newbie
*
Offline Offline

Activity: 1
Merit: 0


View Profile
January 25, 2018, 01:19:06 PM
 #156

Hi.

I also want to make my own coin.

Is this tutorial still can follow and works well?

I am concerned original posted so long ago.



Same question, great guide, but is it actually??
thank you so much!
gregor71
Newbie
*
Offline Offline

Activity: 52
Merit: 0


View Profile
January 25, 2018, 11:00:23 PM
 #157

Part of the work you can do on the instructions, somewhere I'll have to figure it out
cha0s619
Newbie
*
Offline Offline

Activity: 2
Merit: 0


View Profile
February 01, 2018, 02:25:09 PM
 #158

Since there are so many garbage coins out there, I decide to create
this course to teach you how to create a new alt coin. It's so simple,
that I can usually do within 2 hours.

You need to have some basic knowledge of C++ programming. No need
to be an expert, but you need to understand the basic compiling errors
and how to fix them.

Follow the following steps to create a new alt coin:

Preparation Step:

Download the Litecoin full source code, you can find it in github, just
do a google, you'll find it.

If you use windows, follow the steps in this thread:
https://bitcointalk.org/index.php?topic=149479.0

set up environment and libs, and compile the Litecoin. If you are successful
in compiling it (and run it), then your environment is good.


Design your coin:

Now that you have env set up, before doing coding, you need to do some design of
your coin, this is simple math calculations, but you need them for parameters
in the coding.

Basically you need to determine what you want:
- name of the coin. Let's call it AbcCoin in our example. Also determine the symbol, we call it "ABC"
   in our example.
- block time: this is the average target time between blocks. Usually you set it between 15 sec and 2 mins.
   You can also do 10 mins if you want (like bitcoin), but it's too long imo.
- difficulty retarget time: this is important, since otherwise it could cause serious instamine problem.
   Usually it's between 1 hr to 1 day.
   (diff retarget time)/(block time) gives you how many blocks a diff retarget will happen. This is
   an important parameter to consider.
- what's the initial coin per block. People set it to 2 to 100, usually. You can set any you want.
   Also you can do coins per block based on the block number, or even randomly (like JKC/LKY etc).
- How long you want coins per block be halved. Usually it's 6 month to 3 years. But again you set whatever
   you like.
- Ports, you need two: connection and RPC ports. Choose the ones that are not used in common apps.
   You can google for a particular port usage.

There are some other things you may want to adjust, such as initial diffculty etc. But usually I don't want to bother with these.

Now with these parameters defined, one important thing is that you want to calculate how many blocks/coins
generated in a month, a year etc, and total coins ever will be generated. This gives you a good idea how overall
your coin will work, and you may want to re-adjust some parameters above.


Now the code change part.

Before you begin, copy the whole directory of Litecoin to Abccoin. Then modify the code in Abccoin.

Follow the below steps for code changes:

1. In Abccoin/src dir, do a search of "litecoin", and change most of them to "abccoin", note you may want
to do a case-sensitive replace. You don't have to replace all, but most should be replaced.
You can reference to smallchange code first commit
https://github.com/bfroemel/smallchange/commit/947a0fafd8d033f6f0960c4ff0748f76a3d58326
for the changes needed.

Note: smallchange 1st commit does not include many of the changes I will outline below, but it is a
good reference for what need to be changed.


2. In Abccoin/src dir, do a search on "LTC", and change them to "ABC".

3. Change the ports: use the ones you defined in coin design, and change in the following files:
- connection port: protocol.h and init.cpp
- rpc port: bitcoinrpc.cpp and init.cpp

4.  Change parameters, all in main.cpp:
   - block value (in GetBlockValue())
   - block time (right after GetBlockValue())
   - diff retarget time (right after GetBlockValue())
   - adjust the diff retarget scale to avoid instamine (in GetNextWorkRequired())

for the last item, refer to Luckycoin code, you will see how this is done.
For random coin values in block, refer to GetBlockValue() function in JKC and Luckycoin code.

5. According to your coin design, adjust the value in main.h:
   - max coin count
   - dPriority

6. Change transaction confirmation count (if you want say 3 confirmation transaction etc) in transactionrecord.h
also change COINBASE_MATURITY which affects the maturity time for mined blocks, in main.h/cpp.

7.  Create genesis block. Some people get stuck there, it's really easy:
- find LoadBlockIndex() function, inside, change:
    - paraphrase (pszTimestamp) to any recent news phase.
    - get the latest unix time (do a google), and put in block.nTime.
    - set any nNonce (doesn't really matter)
you can change the time/nonce for testnet too, if you want to use it.

After you are done, save it. Now the genesis block will not match the hash check and merkle root check, it doesn't matter.

The first time you run the compiled code (daemon or qt), it will say "assertion failed". Just exit the program, go to
config dir (under AppData/Roaming), open the debug.log, get the hash after "block.GetHash() = ", copy and paste it to the beginnig of main.cpp, hashGenesisBlock. Also get the merkle root in the same log file, paste it to the ... position in the following code, in LoadBlockIndex()
Quote
       assert(block.hashMerkleRoot == uint256("0x..."));

recompile the code, and genesis block created!

BTW, don't forget to change "txNew.vout[0].nValue = " to the coin per block you defined, it doesn't matter to leave as 50, just be consistent with your coin per block (do this before adjust the hash and m-root, otherwise they will be changed again).

Also you need to change the alert/checkpoint key, this depends on the coin type and version, you can find it in main.cpp, main.h, alert.cpp and checkpoint.cpp.

8. Set the correct address start letter in base58.h. You may want to do some trial and error to find the letter you want. I never can calculate precisely the letter location.

change corresponding "starts with " in sendcoinsentry.cpp
change example in signverifymessagedialog.cpp

9. Checkpoint: you want to disable the checkpoint check initially, otherwise you may get stuck.
You have multiple ways to disable it, my way is:
- open checkpoints.cpp
- there are 3 functions, comment out the normal return, and make them return either true, 0, or null, like this:
Quote
   bool CheckBlock(int nHeight, const uint256& hash)
    {
        if (fTestNet) return true; // Testnet has no checkpoints

        MapCheckpoints::const_iterator i = mapCheckpoints.find(nHeight);
        if (i == mapCheckpoints.end()) return true;
        // return hash == i->second;
      return true;
    }

    int GetTotalBlocksEstimate()
    {
        if (fTestNet) return 0;
   
        // return mapCheckpoints.rbegin()->first;
      return 0;
    }

    CBlockIndex* GetLastCheckpoint(const std::map<uint256, CBlockIndex*>& mapBlockIndex)
    {
        if (fTestNet) return NULL;

        BOOST_REVERSE_FOREACH(const MapCheckpoints::value_type& i, mapCheckpoints)
        {
            const uint256& hash = i.second;
            std::map<uint256, CBlockIndex*>::const_iterator t = mapBlockIndex.find(hash);
            if (t != mapBlockIndex.end())
                // return t->second;
            return NULL;
        }
        return NULL;
    }

Now this is disabled. Once everything works, you can premine 50 blocks, and extract some hashes and put them in the checkpoints, and re-enable these functions.

That's about it. You can do compilation all the way along, no need to do in the end, you may get a lot compilation errors.

Oh, icons:

10. Find a nice image for your coin, then make 256x256 icons/images. You have 5 images to replace in src/qt/res/icons, and 1 to replace (splash) in src/qt/res/images.

11. Oh also edit those files in qt/forms. These are files for help etc, better make them look nice, display your coin names than litecoin ones.

12. Now for compilations:
- qt: modify the .pro file under abccoin, and follow the make process in
https://bitcointalk.org/index.php?topic=149479.0

- daemon: update one of the makefile for your system, and in my case I use mingw32 shell to make.


That's it, voila, you have your own alt coins!!



How do you go about forking a mobile wallet like mycelium in order to use it with an altcoin created using thsi tutorial?
stcnetwork
Newbie
*
Offline Offline

Activity: 1
Merit: 0


View Profile
February 01, 2018, 09:27:13 PM
 #159

Thank you so much it helped a lot. How can one create wallets for the newly created altcoin? Please write a tutorial on it also. Can someone tell me whose code has this guy forked? https://github.com/0xfff/VanCoin
Leocrypto da Vinci
Jr. Member
*
Offline Offline

Activity: 210
Merit: 1

OMNITY Knowledge, connected


View Profile
February 01, 2018, 11:34:29 PM
 #160

Very interesting stuff, but in the last years things changed a lot. Of course you still can make a new coin, but now - if there isn't a real project behind it, it will die immediately.
It would be as to print our own money: it's possible, but nobody will accept it.

https://OMNITY.io/ico
               Knowledge, connected.               
Unifying Knowledge For Faster Insight.
Pages: « 1 2 3 4 5 6 7 [8] 9 10 11 »  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!