游戏开发论坛

 找回密码
 立即注册
搜索
查看: 9888|回复: 15

[讨论] [抛砖引玉]游戏装备属性的储存与计算模型

[复制链接]

2

主题

7

帖子

7

积分

新手上路

Rank: 1

积分
7
发表于 2007-11-12 14:50:00 | 显示全部楼层 |阅读模式
  某游戏中头盔属性如下:

      霸王战盔
     耐久度 23/30

     力量+2
       敏捷+3
       生命+122
       致命一击+2%
       魔法恢复速度+3
       金钱获得率+10%
       魔法耗费减少12%

       等级要求:10
       力量要求:35

请问对于这种属性的存储和计算,用什么数据结构或方法性能最佳.

一般有如下方法:
1.数据库
  每样物品保存一条记录,有名称/属性1/属性2....需求1/需求2....
2.xml文本配置

请大家集思广益,提供任何其他的思路或想法.........

0

主题

114

帖子

181

积分

注册会员

Rank: 2

积分
181
发表于 2007-11-13 11:20:00 | 显示全部楼层

Re:[抛砖引玉]游戏装备属性的储存与计算模型

    @@,发错地方了,放倒程序区去问比较有效吧

6

主题

60

帖子

64

积分

注册会员

Rank: 2

积分
64
发表于 2007-11-13 13:30:00 | 显示全部楼层

Re:[抛砖引玉]游戏装备属性的储存与计算模型

动态数据当然是存数据库
静态的用配置文件存,比如csv

8

主题

663

帖子

674

积分

高级会员

Rank: 4

积分
674
发表于 2007-11-13 20:05:00 | 显示全部楼层

Re:[抛砖引玉]游戏装备属性的储存与计算模型

txt 最好。

8

主题

144

帖子

161

积分

注册会员

Rank: 2

积分
161
QQ
发表于 2007-11-14 11:33:00 | 显示全部楼层

Re:[抛砖引玉]游戏装备属性的储存与计算模型

配置文件:
[头盔配置]
  装备名称 = 霸王头盔
耐久度上限 = 30
力量附加   =  2
敏捷附加   =  3
生命附加   =  122
致命一击   =  2%
魔法恢复速度 = 3
金钱获得率 = 10%
魔法耗费减少 = 12%
等级要求 = 10
力量要求 = 35
--------------------
数据库:  
    装备编号:  001 ;  装备名称:霸王头盔 ;   当前耐久  = 23; ....

0

主题

167

帖子

191

积分

注册会员

Rank: 2

积分
191
发表于 2007-11-14 16:02:00 | 显示全部楼层

Re:[抛砖引玉]游戏装备属性的储存与计算模型

可以沿用暗黑的存储方式。
道具分为基本属性和附加属性。
附加属性通过1个加在道具前的词条来判断。

比如
1个道具是头盔,基本属性是耐久上限12,力量要求35,防御??

该头盔前缀如果是“霸王”就意味系统对该道具自动会加入以下属性

力量附加   =  2
敏捷附加   =  3
生命附加   =  122
致命一击   =  2%
魔法恢复速度 = 3
金钱获得率 = 10%
魔法耗费减少 = 12%

这样可以减少数据的容量。

6

主题

60

帖子

64

积分

注册会员

Rank: 2

积分
64
发表于 2007-11-14 22:50:00 | 显示全部楼层

Re:[抛砖引玉]游戏装备属性的储存与计算模型

暗黑不是这么存的吧
应该是
物品附加字节流--->物品描述串的说
不然暗黑也不可能做到物品属性的随机。。。

2

主题

7

帖子

7

积分

新手上路

Rank: 1

积分
7
 楼主| 发表于 2007-11-15 08:50:00 | 显示全部楼层

Re:[抛砖引玉]游戏装备属性的储存与计算模型

存储还好说,
关键是一旦玩家装备该物品时候的计算问题,
一个一个属性取出再计算会不会影响性能?

6

主题

66

帖子

72

积分

注册会员

Rank: 2

积分
72
发表于 2007-11-16 02:50:00 | 显示全部楼层

Re:[抛砖引玉]游戏装备属性的储存与计算模型

0

0

主题

4

帖子

0

积分

新手上路

Rank: 1

积分
0
发表于 2007-11-16 15:54:00 | 显示全部楼层

Re:[抛砖引玉]游戏装备属性的储存与计算模型

同意“
可以沿用暗黑的存储方式,
道具分为基本属性和附加属性”说法。
基本属性定义在配置文件中。
再做个属性定义的配置文件
附加属性存储为
属性ID+参数1
或[属性ID +参数1+参数2]
等等。格式可按需求类型来定义。不是很难
读取是比较繁琐一点,都确定下来就好处理了,规则都是人定的嘛。
比如有两个属性,+10防御 和+5%防御,最简单的办法就是按顺序来计算了。当然也可以按优先排序后再计算。
个人意见,大家一起讨论
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-6-17 15:57

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表