Tech Tuesday Development Update - 2019 Week 13: Blockchain Payment & Dividend Disbursement
This series of posts is called the Tech Tuesday Updates.
In case you’ve missed a previous edition and want to catch up, you can find all the previous Tech Tuesday updates here.
Blockchain Payment & Dividend Disbursement
In previous weeks, the dividend of mining rewards with time-locks was solved using a customized consensus module. Using the framework Komodo has developed to create smart-UTXOs and a new Bitcoin script OP_CODE, the productivity of blockchain developers is increased 100-fold. To highlight this productivity boost a new blockchain enforced payment splitter is already testable within days of the development cycle starting. Earlier in the year, a few day turnaround produced non-fungible token (NFT) trading capabilities for in-game collectibles that hadn’t existed before for Komodo. Taking advantage of the on-chain token DEX, jl777 was able to integrate it into the ROGUE blockchain game.
For this week, a new custom consensus module began development and testing in the past week. After a specific use case, jl777 coded the methods:
- create
- list
- info
- fund
- release
- txidopret
A few days later the validation was added by @blackjok3r and @Alright began testing. Testing is likely to move to the #KMDLABS testing environment at some stage, but for those that want to explore splitting payments or billing in a 2-part credit/debit chain solution the instructions for syncing to the branch of development will be useful.
- git remote add upstream https://github.com/jl777/komodo.git
- git fetch upstream
- git merge upstream/jl777 (because you want the jl777 branch, not master)
The payments custom consensus (at the time of writing) includes these 3 custom variables introduced to facilitate the business logic.
lockedblocks - is the number of blocks before a paymentsfund UTXO is able to be spent with paymentsrelease
minrelease - is the minimum amount a paymentsrelease tx can release
totalallocations - is the amount of vouts specified in paymentscreate
Custom Consensus Loadable Library Documentation Drafts
A CC walkthrough session between Sidd (Tech Writer), Mylo (Engineering LIaison) & James (Lead Developer) was held one evening in mid March. The first drafts of how to create your own custom consensus modules can be viewed at the Tech Tuesday Github until they are incorporated into Komodo’s documentation.
- Core Blockchain Concepts & Custom Consensus Library customcc.h header file walkthrough
- Custom Consensus Library customcc.cpp implementation file walkthrough
The main takeaway is that validation is the most important part of the consensus writing process. In a previous article, jl777 suggested a validation development workflow which can be summarized as:
- Create the RPC calls with no validation to get the functions working
- Do an iteration of basic validation
- Working towards full validation in order to involve testers
Notary Node Election 2019 & Testnet Guide
The Komodo Election site has been released with more information to be published and updated Notary Node installation guide for new candidates is currently being worked on. The basic summary from existing documentation is, it is fundamentally the same with some parts not mentioned below now unnecessary:
- Do not store any keys/credentials in cloud/sync or email.
- Install Komodo & nanomsg
- Install iguana
- Make config files with minimum
- rpcuser
- rpcpassword
- txindex
- rpcbind
- Make the wp_7776 file for iguana
- Start & sync KMD (9GB blockchain, will take a few hours)
- Start & sync chains PIZZA & BEER
- Import WIF into those
- Fund the chains
- Start iguana (testnet)
- Split the funds for each chain into 10000 satoshi chunks
- Start notarizing process for BEER & PIZZA test chains onto KMD
If you plan on being a candidate and using the testnet, please submit your public key in a pull request to the testnet repo. Instructions can be found in the README.
Also give yourself a core concepts overview of how blockchains work, by reading the core concepts of the custom consensus header file draft.
The bottom of the week 2 2019’s Tech Tuesday, there is a what is Iguana and what are its capabilities. The rest of the article has topics that a Notary Node Operator should be aware of, although it’s not part of the Notary Node’s duties and responsibilities, it is an entry into how much technology is involved in the multi-chain, multi-platform, multi-algorithm blockchain ecosystem.
Komodo #dev-games channel update
Last week Tech Tuesday summarized what this blockchain ecosystem can provide game developers, with some additional blockchain game dev services provided by the Komodo daemon described in the “What is Iguana and what are its capabilities?” link in the above Notary Node Election 2019 & Test Guide section.
If you weren’t interested in that article then, you may be now— it also has an opening section on Lightning Network Microtransaction Poker. There you go, you can double dip on game dev blockchain technology within the Komodo ecosystem! The main message in that article is that a game developer asked the another top-50 blockchain for capabilities that are already part of Komodo— an inclusion that is unlikely to be adopted by that blockchain this year.
The update from the game channel from @TwilightPunkster is:
So, the update of today. If you didn't know, RedFOX Labs is accelerating projects in South East Asia, but but but, I had an awesome talk with @Bitcoin Benny. More news to come, so cooking up stuff in the kitchen.
Meanwhile in the batcave, I have started working on a long term plan for the gaming SDK's, and together with @FishyGuts thinking about a profile for us to set out. Thanks to @Mylo(KomodoPioneers) we got 90 days to bring our best out to apply for grants, and @Meyse keeps feeding me game ideas. Tomorrow, I've a meeting with a potential 2d artist, tuesday getting budgets, marketing and branding alive with cool stuff. Komodore64 has a way more retro look and the skillful fingers and help from our hero @Steve Lee are praised with hands reaching the roof. It's Sunday, and we are cooking, planning, moving, hyping and fired up.
Together we are strong.
The current game development is targeting the Unity3d runtime and the mention of grants specifically is that an application to Unreal Engine (UE) for a grant to port what we create for the UnitySDK to the UE SDK.
Thank you for the week of tech news! Good luck to all Notary Node Operators & Candidates in 2019.
To get all the latest updates from Komodo, join the monthly email list. On the first Friday of every month, you'll receive a newsletter with information about all of the most important developments from the previous month. You can also join the Komodo Discord server to chat with other community members and the Komodo team.