在之前的文章RC系统解密之最大MANA(max_mana) / 如何提升,我们知道了max_mana
的计算规则。
max_mana
的计算规则如下:
用户vests - 代理出去的vests + 收到代理的vests + 注册费vests + 下次power down vests
(图源 :pexels.com)
对于其它几项内容,我们可以通过API读取用户信息获得,但是注册费对应VEST_SHARES却一个历史数据,也就是说在用户注册账户当时是可以通过注册费(STEEM)以及当时的STEEM与VEST_SHARES比例计算出来的。
很显然,除非REPLAY整个STEEM区块链,否则我们没法确定某个账户注册当时的注册费价格以及STEEM与VEST_SHARES的换算关系。那么,我们该如何拿到这个注册费vests
这个计算max_mana
的关键因素之一呢?
好消息是STEEM区块链帮我们想到了这一点,它在注册账户这一操作之后,直接注册了一个对应的:rc account
亦即create_rc_account
,并将对应的内容保存至rca.max_rc_creation_adjustment
:
所以,我们不用操心如何计算rca.max_rc_creation_adjustment
了,只需读取即可。
那么如何读取呢?其实也很简单,只需调用RC API读取对应的账户即可,以我的账户为例,调用方法如下:
{"jsonrpc": "2.0", "method": "rc_api.find_rc_accounts", "params": {"accounts": ["oflyhigh"]}, "id": 1}
返回内容为:
其中max_rc_creation_adjustment的数值为:12518977945,精度为6,对比一下steemd.com上查询的结果:
可见二者是一样一样的,至此我们已经获得了计算max_mana
的所有因素。等等,RC API的find_rc_accounts
都返回了什么?其中竟然包括了max_rc
(就是max_mana
啦),那我们还为什么要费劲周折的计算呢?
(图源 :pexels.com)
答案是确实不需要计算,但是知道它来龙去脉有助于我们理解这个系统,不是嘛!
This page is synchronized from the post: RC系统解密之:RC相关信息(max_rc_creation_adjustment)的获得