How to Become an Active Block Producer or an Active Council to Earn Revenue
Cocos-BCX adopts the DPoS consensus mechanism, which maintains the Cocos-BCX network and ecological governance through community voting for 11 active BPs and 11 active councils. It provides computing power, bandwidth, storage support for the Cocos-BCX MainNet, internal proposals, parameter configuration, etc., promoting the healthy development of the Cocos-BCX MainNet ecosystem.
BP, is short for Block Producer
1. Role Selection
Users can register as the council candidates or BP candidates or as both a Council and a Block Producer candidate.
BP candidates who obtain top 11 votes will become active BPs. Active BPs need to refer to the following configuration instructions to build block nodes and participate in block production.
Council candidates who obtain top 11 votes will become active councils, participating in online governance, and voting on proposals.
2. Become an Active BP
There are two methods of registering as a Witness Candidate.
Method №1 Developer Wallet
1) Register an MainNet Account
Firstly, follow How to Download Cocos-BCX Developer Wallet and Register an Account
to download the wallet, and then register an COCOS MainNet account. As being a BP requires 50 million COCOS and registering a candidate costs 1000 COCOS, so you need to have a minimum amount of 50,001,000 COCOS.
2) Register as a Witness Candidate
Please follow the developer wallet instructions to import the referrer account private key, otherwise a permission verification error will be prompted.
a. Upgrade the Account
upgrade_account account name true
b. Register a Witness Candidate
Type the command in the wallet command line
create_witness account name url true
The results are as follows:
c. Get Witness ID
d. Export Signature Public and Private Keys
Type the command in the wallet command line
dump_private_keys
Export the current wallet private key
The results are as follows:
Find a pair of public and private keys that match block_singnning_key in a
3) Build Block Nodes
Follow Operation Guide | Setting up a Node development environment to build the node, install docker before running the installation script.
4)Configure the Config File
The installation script creates witness directory in the / mnt directory by default, enters the config directory below witness, edits the config file, and modifies as following:
Fill out the obtained witness ID in the first red box
Fill out the signed public and private key corresponding to the obtained block_signning_key in the second red box , save and exit.
5) Restart
docker restart witness
After that, view logs
It is correct when tail -f /mnt/witness/logs/witness_node.log shows got block
6) Vote
Type the command in the wallet command line
vote_for_witness Voting account name Voted account name Voting amount * 100000 true
The results are as follows:
7) Check the Current Votes
You need to check whether the current number of votes you get let you participate in the election successfully.
a. List Current Witness Candidates
Type the command list_witnesses “” 10
The results are as follows:
b. Querying Votes
Type get_witness 1.6.1
The results are as follows:
Check if the number of votes in your account is in the top 11. If not, you should get additional votes. Steps 6 and 7 may be repeated several times.
8) Check Information After 24 Hours
Type command info in the command line
The results are as follows:
In the picture above, circled by the red frame is the account id, you can get the account id by using the command get_account account name
Check whether the account ID is in the active_witnesses list returned by info.
Check the log tail -f /mnt/witness/logs/witness_node.log and you can see the words — generate block every few lines.
9)Actively Claim Benefits
Witnesses’ block generation rewards will be issued in real time. (Generating one block in 2 seconds, each block generation gets 100 COCOS.) At present, witnesses need to claim rewards actively.
a. Firstly, you can view vesting ID and number of withdrawals in get_vesting_balances account name
In the picture above, circled by the first red frame is the vesting ID; circled by the second red frame is the number that can be taken out (with 5 digits of precision)
b.withdraw_vesting vesting_id amount COCOS true
Please note that the amount here does not have precision, for example, 225490000000/100000 = 2254900
Method №2 JSSDK
1) Register an Account
Download JSSDK from https://github.com/Cocos-BCX/JSSDK
Register an account by JSSDK (Guide to Create a Cocos-BCX MainNet Account) and deposit certain amount of token.
2) Upgrade to a Lifetime Membership

3) Generate Random Public and Private Keys as Block Generation Public and Private Keys

After that, copy and save. Those public and private keys are only used for block generation signature, have no link to assets.
4) Upgrade to a Witness Account
Fill out random public key generated from step 3

5) Voting

6) Check the Current Votes

7) Check the Working State of Witness Candidates After 24 hours

8)Actively Claim Benefits

3. Become an Active Council
Method №1 Developer Wallet
3.1) Register a MainNet Account
Firstly, follow How to Download Cocos-BCX Developer Wallet and Register an Account
To download the wallet, and then register an COCOS MainNet account. As being a BP requires 50 million COCOS and registering a candidate costs 1000 COCOS, so you need to have a minimum amount of 50,001,000 COCOS.
3.2) Register as a Council Candidate
Please follow the developer wallet instructions to import the referrer account private key, otherwise a permission verification error will be prompted.
a. Upgrade the Account
upgrade_account account name true
b. Register a Council Candidate
Type the command in the wallet command line
create_committee_member account name url true
3.3) Vote
Type the command in the wallet command line
vote_for_committee_member Voting account name Voted account name Voting amount * 100000 true
3.4) Check the Current Votes
You need to check whether the current number of votes you get let you participate in the election successfully.
a. Get Council ID
Type the command list_committee_members “” 14
The results are as follows:
b. Query the Number of Votes
Type commands
get_committee_member 1.5.0
The results are as follows:
Check if the number of votes in your account is in the top 11. If not, you should get more votes. Steps 3 and 4 may be repeated several times.
3.5) Check the Information After 24 hours
Type the command info in the command line
The results are as follows:
The red box here is the account id, you can get the account id by using the command get_account account name
Check if the account ID is in the active_committee_members list returned by info.
3.6) View Benefits
The income of the council will be immediately received, and it will be distributed once every 24 hours.
Method №2 JSSDK
3.1) Register an Account
Download JSSDK from https://github.com/Cocos-BCX/JSSDK
Register an account by JSSDK (Guide to Create a Cocos-BCX MainNet Account) and deposit certain amount of token.
3.2) Upgrade to a Lifetime Membership

3.3) Upgrade to a Council Account

3.4) Voting

3.5) Check the Current Votes

3.6) Check the Working State of Council Candidates After 24 hours

3.7) View Benefits
The income of the council will be immediately received, and it will be distributed once every 24 hours.
4. Role withdrawal
If the operation error results in the selection of the wrong character, you can use the withdrawal function
Please note that there must be a chain period between the withdrawal function and successful registration
4.1) BP withdrawal
update_witness account name url block_signing_key willingness to work (false) whether to broadcast (true)
4.2) Witness updates the block public key
update_witness account name url block_signing_key willingness to work (true) whether to broadcast (true)
4.3) Council withdrawal
update_committee_member Account name url Willing to work (false) Whether to broadcast (true)
If you have any other questions, please feel free to join Cocos-BCX official group and contact admins for help, we will solve your problems as soon as possible.
About Cocos-BCX
- Website:https://www.cocosbcx.io/
- Weibo:https://www.weibo.com/u/2183715773
- Twitter:https://twitter.com/CocosBCX
- Reddit:https://www.reddit.com/user/cocos-bcx/
- GitHub:https://github.com/CocosBCX
- Medium:https://medium.com/@CocosBCX
- Telegram EN:https://t.me/cocosbcxen
- Telegram CN:https://t.me/CocosBCX
- Telegram Vietnam:https://t.me/cocosbcxvietnam
- Telegram Russia: https://t.me/cocosbcxru
- Facebook:https://www.facebook.com/cocosbcx/
- Discord:https://discord.gg/jdJMNtC
- Developer Document:https://cn-dev.cocosbcx.io/
- COCOS Bounty: https://bounty.cocosbcx.io/
- Cocos-BCX Blockchain Explorer:https://explorer.cocosbcx.io/