很多都是策划配表然后导出放到客户端服务端的,大佬们有没有使用数据库来实现这种功能?比如 sqllite ?
1
hanxiV2EX 2021-01-20 16:53:49 +08:00
当然是导出编程语言的数据结构更合适啊,比如 python 的 dict,lua 的 table,js 的 json
|
2
tmackan 2021-01-20 17:04:55 +08:00
excel 对游戏策划更容易上手吧
|
3
GM 2021-01-20 17:08:08 +08:00 1
理论上当然可以,但是实际中使用会涉及到工具链、工作流、大量员工重新培训的问题,几乎不可能推得动的。除非你能一次性拿出一整套比现有方案有明显优势的解决方案出来。
|
4
assiadamo 2021-01-20 17:15:57 +08:00
当然可以,历史原因和各种各样取舍而已
|
5
winnerczwx 2021-01-20 18:00:34 +08:00 via iPhone
见过一个折中的办法,策划表 excel 把二进制数据错数据库,服务端直接读二进制解析配置
|
6
sunny352787 2021-01-20 18:07:36 +08:00 1
可以啊,我就这么干的,客户端用的 iBoxDB https://www.iboxdb.com/
|
7
whitehack 2021-01-20 18:09:53 +08:00
一直是 excel 转数据. 想转成啥都行
不要对策划要求太高.策划能给你提个逻辑完整的案子你就烧高香吧 |
8
ETiV 2021-01-20 18:30:22 +08:00 via iPhone
在用 Excel,数据库没有可用的 UI
比如跨不同的分支搬配置表内容,就需要打开两个不同的 Excel 文件,互相 copy 。用数据库的话是没有这样的工具的(但是我在做,Excel 也不方便…) 我想应该可以用 protobuf 的定义,当成 scheme 作为配表的约束 数据库应该用不大上 |
9
bruce0 2021-01-20 19:05:18 +08:00
技术上是没问题的
看策划的学习能力和接受程度了,一般都是让策划直接操作 Excel 公司一般都会写一个工具,把 Excel 转成程序需要的文件,json; xml; yaml; protobuf 等等 |
10
livepps 2021-01-20 19:10:05 +08:00 via Android
excel 导出数据,要什么格式看程序,存到数据库里面也可以,服务器有这么干的,客户端主要还是用文件吧,不然呢怎么增量更新配置,出 sql 语句客户端本地执行,不大现实,服务端就没有这个问题,直接替换表,或者刷库,都可以的?
|
11
koolob 2021-01-20 19:48:33 +08:00
因为策划经常需要做公式拉表之类的操作,而 excel 提供了各种各样丰富的功能。如果能开发一个满足策划需求的操作界面,就可以比较容易推进这种改动了。
|
12
paoqi2048 2021-01-20 20:29:47 +08:00
可以,不过你需要提供一个转换工具
|
13
chashao OP @hanxiV2EX 主要是策划人数多了以后会出现很多人一起编辑一个 excel 的情况,这样只能锁整个表。。如果是数据库可能会好一些?
|
14
chashao OP @sunny352787 牛批,我去看看,这种客户端的数据库怎么热更新呢?
|
16
shpkng 2021-01-20 20:53:51 +08:00
我们的项目就有一个数据库来存放数据,策划可以在网页端协同操作
大量的数据增删就用导出和导入 xls |
17
sunny352787 2021-01-20 21:04:40 +08:00
@chashao 本质上还是从 Excel 转存到数据库文件,类似 sqlite 的 db 文件,然后压缩后缀名改成 bytes 这样就可以用 Unity 的文件接口处理了,貌似你们是编辑过程中出现的冲突,如果实在解决不了那就用在线文档协作方式编辑,然后需要导入 Unity 的时候取出 xlsx 文件用
|
18
no1xsyzy 2021-01-20 22:49:50 +08:00
@winnerczwx 这真的叫折中吗?是套娃吧……
|
19
hanxiV2EX 2021-01-20 23:33:54 +08:00 via Android
@chashao 只能把表拆细一点了,或者使用在线共同编辑的那种 excel,因为数值策划需要 excel 公式的
|
20
byzf 2021-01-21 05:50:44 +08:00
有公司这么用,策划用 navicat 这种,excel 里直接拷贝进数据库。
|
21
SupercatX 2021-01-21 08:48:17 +08:00 via iPhone
没问题的,大型网游大都是利用数据库来存储配置表的,至于用什么库就没有定论了
|
22
SupercatX 2021-01-21 09:06:21 +08:00 via iPhone
数值类的肯定是策划在 excel 里调试计算的,然后利用中间程序把最终的表格上传 /转化到游戏项目中的,至于最终游戏里利用数据库还是直接读取转化后的文件根据游戏和技术的习惯来定。
开发阶段 excel 肯定是逃不过的,总不能让策划一条一条的自己录数据,也不能让策划自己敲代码调试数值吧? |
23
GM 2021-01-21 11:42:20 +08:00
忘了一个,配置表导出成 txt 有个好处是可以入源码库做版本管理,出了 bug 可以和前一个版本做 diff,要是直接存入数据库,那就没办法做版本化管理了,或者需要很大的精力去做。
|
25
levelworm 2021-01-21 13:00:46 +08:00 via Android
中间加一个会一些编程的 BA,帮策划把需求翻译成数值然后写进数据库如何?或者你写个 VBA 但是估计会有很多骚操作需要考虑。
|
27
QING0 2021-05-11 17:22:31 +08:00
我们是这样处理的:
策划配置 excel,然后我自己写了一个导出 /转换工具,把 excel 的数据导入到 sqlite 中,游戏运行时就读 sqlite 中的数据。 对于热更新,就是热更 sqlite.db ,十多 MB 的 db 压缩为 zip 之后,也就 3MB 左右 整个工具已经开源在 github,可以看看我这篇文章有介绍如何使用: https://www.cnblogs.com/zhaoqingqing/p/7440867.html |