昨天发了个帖子
讲了对帖子使用收益分享功能发奖后金额的一些疑问,主要有两个方面:
- 收益分享,分享的是去除点赞者收益后作者实际收益的百分比吗?
- 收益分享的SP核算价格,是current_median_history_price 还是市场价格?
收益分享功能没问题
然后经过专家级人物耐心细致的指点,大致搞明白了这个问题
其核心就是: 我看到的帖子金额,是收益分享的剩余金额
所以,就我的那个帖子而言:
- 分给受益者(Beneficiaries):
3.504 * 5 = 17.52 占了25% (5%*5)
- 分给作者(Author):
3.504*15 = 52.56 占75% (100%-25% = 75%)
分两部分发放,SP 26.28 , SBD 43.177
- 分给点赞者(Curators): $20.64
一切没毛病,如果一定要找出毛病,那就是steemit UI上少显示了一部分内容,总奖励应该包含:
- 点赞者 / Curators
- 受益人 / Beneficiaries
- 作者 / Curators
而STEEMIT UI上只显示了两项,造成我巨大的误解,也耽误了专家大量时间。😡
从代码上验证这个问题
尽管专家已经帮我找出了问题所在
但是今天还是粗略浏览了一下代码,看看是否真的如此
代码真的好复杂,吐血
发奖代码在process_comment_cashout()
这个函数
大致就是做一些准备和判断工作,然后遍历每个Comment
调用:auto reward = cashout_comment_helper( ctx, comment );
所以这个就是为帖子发奖的代码啦: cashout_comment_helper()
其中我们需要知道是,comment.net_rshares 决定你的帖子有多少钱。
除去一些设置和初始化之类的:
这个就是帖子的总收益/代币tokens了
代币分为作者的以及点赞者的,按比例分配
发放点赞者代币,但是呢,因为有些有早鸟惩罚,所以会剩一些,统统奖励给作者
这部分就是给受益人发放奖励啦
由此可见,它是以刨除点赞者收益以后的作者总收益为基础按比例发放。
最终给作者的收益(减掉了受益人部分),根据设置,按比例发放
通过这部分代码,我们得知:
- 帖子的收益,除去其它一些因素,由comment.net_rshares决定
- get_rshare_reward 根据系统因素以及comment设置(拒绝收益,最大收益等)计算帖子总应得代币
- 总应得代币按比例分成作者以及点赞者代币
- 点赞者代币发放的剩余部分(早鸟惩罚),增加给作者
- 作者总应得代币(作者部分+早年惩罚剩余部分)按比例分给受益者(Beneficiaries)
- 分给受益人以后的剩余部分,按照设置发放给作者
再回头看我在专家指点下对帖子收益分享功能的理解,没毛病。
另外,经过分析,我们回头看昨天提出的问题,答案已经不言而喻了。
STEEM 以及 STEEM UI 需要改进的地方
STEEM在计算和发放奖励后,会对帖子执行一些更新操作,比如加上发奖时间,以及分给点赞者和作者的实际收益等等。但是却没有加上给受益人的收益这一信息
而STEEMIT UI上,更是只显示了
- 作者/Author收益
- 点赞者 / Curators 收益
并且粗暴的把这两项加到一起,显示为帖子收益(总奖励)
这能不让人误会嘛,害我拿小算草本计算半天😡
所以建议如下:
链上对结算后的Comment 加上
beneficiaries_payout_valueUI上对结算的帖子,加上
受益人 / Beneficiaries 收益
顺便补充一个最重要的结论: 收益分享功能不会倒搭钱的😭
感谢阅读 / Thank you for reading.
欢迎upvote、resteem以及 following me @oflyhigh 😎
This page is synchronized from the post: 关于收益分享功能理解的终极版(专家指点 & 代码核证)