Closed LaoshuBaby closed 1 year ago
可以有(
@LaoshuBaby @bakaomg 如果需要一个统一的“文件结构”,推荐采用 protobuf 等基于二进制的包含结构的可序列化的不易直接读取数据形式。 这类形式对于程序来说足够简单好用,传输起来足够方便,且比 JSON 开销小。 除此之外,其不易伪造,可以一定程度上避免对数据的直接修改导致的 parse 失败,而且能够支持 JSON 无法支持的数据结构。 最重要的是,他可以做数据版本控制,新旧版本的数据只需要改动模型就能兼容读取,而 JSON 变更字段则只能全部重新 parse。 这些点更符合“数据交换”文件所需要的条件。 另:不建议兼容任何 Microsoft Excel Workbook 格式,因为他本来就不是用来干这个的,程序 parse 起来常常十分费劲。
关于 protobuf 的更多细节,详阅:https://protobuf.dev/
如果需要一个统一的“文件结构”,推荐采用 protobuf 等基于二进制的包含结构的可序列化的不易直接读取数据形式。 这类形式对于程序来说足够简单好用,传输起来足够方便,且比 JSON 开销小。 除此之外,其不易伪造,可以一定程度上避免对数据的直接修改导致的 parse 失败,而且能够支持 JSON 无法支持的数据结构。 最重要的是,他可以做数据版本控制,新旧版本的数据只需要改动模型就能兼容读取,而 JSON 变更字段则只能全部重新 parse。 这些点更符合“数据交换”文件所需要的条件。 另:不建议兼容任何 Microsoft Excel Workbook 格式,因为他本来就不是用来干这个的,程序 parse 起来常常十分费劲。
关于 protobuf 的更多细节,详阅:https://protobuf.dev/
!居然被回复了捏
(不过我原来那个issue已经转给UIGF做discussion了,接下来的讨论应该还是UIGF主持,毕竟有UIGF和UIAF的先例,搞统一标准会更有帮助一些)
说起来我也不是第一次试着去设计一种标准了,但是最后要做到既能简单方便的各种软件各种语言读写,同时不丧失人应急情况下直接拿文本编辑器阅读的可能性,还常见——就只有json和xml这俩古董——那一般最终都要塌缩成json的。目前的UIGF也是用的json。
不过对未来综合原神和星铁两个游戏的新结构的尝试——欢迎去discussion评论捏!https://github.com/orgs/UIGF-org/discussions/7
而xlsx——拜托,搞程序(尤其是搞开放标准)的谁会拿这玩意做交换格式啊,用纯csv都不用xlsx(乐)
~而xlsx——拜托,搞程序(尤其是搞开放标准)的谁会拿这玩意做交换格式啊,用纯csv都不用xlsx(乐)~
你再骂(恼
UIGF一开始差点只有xlsx规范.jpg
SRGF v1.0 出来了,而且已经进行适配,这个 issue 就关了(
星穹铁道的抽卡抓包和原神的返回比较类似,感觉可以套用在原神抽卡交换格式上的经验,指定类似UIGF的UIGSR(或者其他名字!可以再议!)的交换格式,希望能趁相关工具还不多的时候团结一心联合起来!
目前星穹铁道还没出现paimon.moe这样的pompom.moe之类的东西(哦不,已经有了,pom-pom.moe),希望这次能制定一个让全世界各地工具开发者都用得上的格式(毕竟原神的交换格式基本上就分成了paimon.moe和UIGF两套)为了避免在每个项目中都引用一遍对太多开发者造成打扰,我把目前所有使用了的项目全都记录在 https://github.com/LaoshuBaby/HSR-UIG/issues/1 中了