像「暗黑破坏神」「流放之路」这样有词缀系统的网络游戏,装备数据库是如何设计的? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
AIPC
V2EX    程序员

像「暗黑破坏神」「流放之路」这样有词缀系统的网络游戏,装备数据库是如何设计的?

  •  
  •   AIPC 2021-11-13 10:42:17 +08:00 3863 次点击
    这是一个创建于 1427 天前的主题,其中的信息可能已经有所发展或是发生改变。

    类似这样有词缀系统的游戏,可以生成的装备「似乎」是无法穷尽的。

    难道是玩家每爆出一件装备,都会在整个服务器的装备库里插入一条单独的数据吗?

    17 条回复    2021-11-15 12:12:01 +08:00
    SimonOne
        1
    SimonOne  
       2021-11-13 11:09:20 +08:00
    带有镶嵌功能的游戏不也一样吗。
    词条个数和位置是固定的吧,你把词条当成特殊的装备,一件装备当成组合的装备不久行了吗。
    winnerczwx
        2
    winnerczwx  
       2021-11-13 11:12:08 +08:00
    装备上的词缀分为前缀和后缀

    每个词缀对应的属性是相同的

    像流放之路, 一件+血+力量的手套 那就是 [健康的] [野蛮之] xx 手套
    binux
        3
    binux  
       2021-11-13 11:14:55 +08:00 via Android
    难道装备没词缀,玩家爆装备的时候就不用在数据库里更新这个装备的数据了吗?
    现在给这个装备多加几条注释又有什么区别?
    winnerczwx
        4
    winnerczwx  
       2021-11-13 11:16:45 +08:00
    另外爆出的装备应该只会在类似缓存数据库里, 不会持久化存储

    玩过流放之路的玩家应该知道, 10 分钟打一张图, 可能爆出几百件装备, 能捡起来的可能只有几件, 这种数据没必要持久化

    只有被捡起的才会进入持久化数据库
    kokutou
        5
    kokutou  
       2021-11-13 11:33:01 +08:00 via Android   1
    装备数据在人物数据里。

    服务器只需要核对人物数据的完整性。
    levelworm
        6
    levelworm  
       2021-11-13 11:45:48 +08:00 via Android
    前后缀随机化,比如说 A 的装备 B ,同样 A 和 B 但是数据会稍微有区别。我估计楼上说的有道理,没必要都持久化,应该是先进缓存然后最后游戏结束的时候仅仅保存还在玩家身上的。

    另外暗黑我记得是
    levelworm
        7
    levelworm  
       2021-11-13 11:47:08 +08:00 via Android
    另外暗黑 2 我记得是装备掉下来就已经数值定好了,鉴定只是个噱头。我也挺好奇暗黑 2 战网的数据库是什么样子的。
    raaaaaar
        8
    raaaaaar  
       2021-11-13 17:14:56 +08:00
    话说为什么感觉很少讨论游戏公司里的各种技术
    kokutou
        9
    kokutou  
       2021-11-13 17:38:38 +08:00 via Android
    @levelworm
    很多祖传 bug 都在,目测跟暗黑 2 机制差不多
    DSKcpp
        10
    DSKcpp  
       2021-11-13 18:47:54 +08:00
    2i2Re2PLMaDnghL
        11
    2i2Re2PLMaDnghL  
       2021-11-13 21:36:04 +08:00
    就直观地认知,是带参数的物品,那就不存在整体的装备库,只是人物的装备、库存的数据罢了

    如果某个表的任何记录至多只会被引用一次,且一旦不再被引用则再也不会被引用,那么完全可以直接展平。
    类比一下,有谁会在记录轨迹数据的时候是一张表存点,另一张表引用点的 ID 的?
    zeni123
        12
    zeni123  
       2021-11-14 06:48:11 +08:00 via iPhone
    private static Windforce bow;
    私有的静态的风之力 弓

    说不定是用 AST 实现的
    zeni123
        13
    zeni123  
       2021-11-14 06:49:25 +08:00 via iPhone
    应该是 private static Bow windforce;
    私有的静态的弓 风之力
    nutting
        14
    nutting  
       2021-11-14 08:05:49 +08:00 via iPhone
    没用数据库,对象持久化
    Eytoyes
        15
    Eytoyes  
       2021-11-14 10:00:44 +08:00
    研究过完美世界的数据,装备 hex 数据以 xml 格式存储在角色文件内,属性和属性、属性和值是两个字段粘合在一起的,装备表只存武器的基本信息,后面的随机属性由武器 xml 决定
    wildmelon
        16
    wildmelon  
       2021-11-14 13:26:27 +08:00
    流放之路,可以看看他的网页市集,基本都是明文

    考虑这个游戏的优化,估计设计得一般
    DeWjjj
        17
    DeWjjj  
       2021-11-15 12:12:01 +08:00 via Android
    如果是现在的话应该很多公司都会选择区块链的形式上武器掉落。以此彻底避免外挂复制装备这些,区块链在信息的安全稳定性来看是真强。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     3602 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 00:46 PVG 08:46 LAX 17:46 JFK 20:46
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86