类似这样有词缀系统的游戏,可以生成的装备「似乎」是无法穷尽的。
难道是玩家每爆出一件装备,都会在整个服务器的装备库里插入一条单独的数据吗?
![]() | 1 SimonOne 2021-11-13 11:09:20 +08:00 带有镶嵌功能的游戏不也一样吗。 词条个数和位置是固定的吧,你把词条当成特殊的装备,一件装备当成组合的装备不久行了吗。 |
2 winnerczwx 2021-11-13 11:12:08 +08:00 装备上的词缀分为前缀和后缀 每个词缀对应的属性是相同的 像流放之路, 一件+血+力量的手套 那就是 [健康的] [野蛮之] xx 手套 |
![]() | 3 binux 2021-11-13 11:14:55 +08:00 via Android 难道装备没词缀,玩家爆装备的时候就不用在数据库里更新这个装备的数据了吗? 现在给这个装备多加几条注释又有什么区别? |
4 winnerczwx 2021-11-13 11:16:45 +08:00 另外爆出的装备应该只会在类似缓存数据库里, 不会持久化存储 玩过流放之路的玩家应该知道, 10 分钟打一张图, 可能爆出几百件装备, 能捡起来的可能只有几件, 这种数据没必要持久化 只有被捡起的才会进入持久化数据库 |
![]() | 5 kokutou 2021-11-13 11:33:01 +08:00 via Android ![]() 装备数据在人物数据里。 服务器只需要核对人物数据的完整性。 |
![]() | 6 levelworm 2021-11-13 11:45:48 +08:00 via Android 前后缀随机化,比如说 A 的装备 B ,同样 A 和 B 但是数据会稍微有区别。我估计楼上说的有道理,没必要都持久化,应该是先进缓存然后最后游戏结束的时候仅仅保存还在玩家身上的。 另外暗黑我记得是 |
![]() | 7 levelworm 2021-11-13 11:47:08 +08:00 via Android 另外暗黑 2 我记得是装备掉下来就已经数值定好了,鉴定只是个噱头。我也挺好奇暗黑 2 战网的数据库是什么样子的。 |
![]() | 8 raaaaaar 2021-11-13 17:14:56 +08:00 话说为什么感觉很少讨论游戏公司里的各种技术 |
![]() | 10 DSKcpp 2021-11-13 18:47:54 +08:00 |
11 2i2Re2PLMaDnghL 2021-11-13 21:36:04 +08:00 就直观地认知,是带参数的物品,那就不存在整体的装备库,只是人物的装备、库存的数据罢了 如果某个表的任何记录至多只会被引用一次,且一旦不再被引用则再也不会被引用,那么完全可以直接展平。 类比一下,有谁会在记录轨迹数据的时候是一张表存点,另一张表引用点的 ID 的? |
![]() | 12 zeni123 2021-11-14 06:48:11 +08:00 via iPhone private static Windforce bow; 私有的静态的风之力 弓 说不定是用 AST 实现的 |
![]() | 13 zeni123 2021-11-14 06:49:25 +08:00 via iPhone 应该是 private static Bow windforce; 私有的静态的弓 风之力 |
![]() | 14 nutting 2021-11-14 08:05:49 +08:00 via iPhone 没用数据库,对象持久化 |
![]() | 15 Eytoyes 2021-11-14 10:00:44 +08:00 研究过完美世界的数据,装备 hex 数据以 xml 格式存储在角色文件内,属性和属性、属性和值是两个字段粘合在一起的,装备表只存武器的基本信息,后面的随机属性由武器 xml 决定 |
![]() | 16 wildmelon 2021-11-14 13:26:27 +08:00 流放之路,可以看看他的网页市集,基本都是明文 考虑这个游戏的优化,估计设计得一般 |
![]() | 17 DeWjjj 2021-11-15 12:12:01 +08:00 via Android 如果是现在的话应该很多公司都会选择区块链的形式上武器掉落。以此彻底避免外挂复制装备这些,区块链在信息的安全稳定性来看是真强。 |