How to Become an Active Block Producer or an Active Council to Earn Revenue

Image for post
Image for post

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:

Image for post
Image for post

c. Get Witness ID

Image for post
Image for post

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:

Image for post
Image for post

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:

Image for post
Image for post

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:

Image for post
Image for post

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

Image for post
Image for post

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:

Image for post
Image for post

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:

Image for post
Image for post

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

Image for post
Image for post

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

Image for post
Image for post

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

Image for post
Image for post

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

Image for post
Image for post

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

Image for post
Image for post

5) Voting

Image for post
Image for post

6) Check the Current Votes

Image for post
Image for post

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

Image for post
Image for post

8)Actively Claim Benefits

Image for post
Image for post

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:

Image for post
Image for post

b. Query the Number of Votes

Type commands

get_committee_member 1.5.0

The results are as follows:

Image for post
Image for post

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:

Image for post
Image for post

The red box here is the account id, you can get the account id by using the command get_account account name

Image for post
Image for post

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

Image for post
Image for post

3.3) Upgrade to a Council Account

Image for post
Image for post

3.4) Voting

Image for post
Image for post

3.5) Check the Current Votes

Image for post
Image for post

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

Image for post
Image for post

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.

Next-Gen Digital Game Economy. Game engine, IDE and blockchain for decentralized game development. Website: cocosbcx.io

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store