Cocos如何实现这种类型游戏中的大数值效果?

7AI{F{FHV_8(19$F_A6`D6

MBWD6_W{O0K1$U15Q7EBE`B

如何实现上面游戏中的大数值效果,如果采用实数计算,达到一定位数会造成精度丢失,还会异常卡顿,
像:万, 亿, 兆,京, 垓, 秭, 穰, 沟, 涧, 正, 载这种单位展示和换算
求一个行之有效的解决思路

bigNumber?

大数字,网上搜搜,有很多的

引用一些第三方库,仅仅是精度提升了一些,比如说载是1 * 10 ** 52,程序还是无法处理这么大的数值

搜了一圈,没有找到有效的方法,尴尬

很久之前朋友发过一个给我c++实现的可以支持无限大精度 最后是用str来表示的

现在还能找得到相关链接或者代码吗

你可以自己写个大数字的处理:
我举个例子, 你用一个int数组去存一个大数字,如果第一个数大于9999,则将大于的部分减掉,除以10000,传给数组中下一个数。
也就是第一个数只存0~9999
第二个数也只存0~9999,表示0~9999万
依次类推。

当字符串处理

自己封装一个也不是很难,就像楼上说的用字符串或者数组存,以字符串为例,1_2_3_9527 表示1兆2亿3万9527,在计算加减乘除时,对应单位的先对应计算一遍,然后由最小单位开始检查,达到该单位的极值时,下级单位就+N。理论上支持无限大。

我不知你是怎么测试的,但BigNumber可以处理超大数
D-Chat_20240228160617

你好,可以简单的实现一下,在GitHub开源一个小项目吗

你好,可以简单的实现一个小demo,在GitHub开源一个小项目吗

6666666,哈哈哈

按字符串处理,BigNumber那个库有bug,线上坑过

什么bug简单说一下 :thinking:

你好,有Demo或者可以帖上相关代码吗,谢谢

github搜索bigNumber,或者npm包都可以
https://www.npmjs.com/package/bignumber.js/v/9.0.1

之前游戏做过大数字,不过单位是: K/M/B/T aa ab ac这样一直扩展下去

你好,可以帮忙实现吗,有偿

你好,可以帮忙实现吗,有偿帮忙