标记游戏版本的最佳做法?


21

有谁知道标记游戏版本的最佳实践。

我不确定除了版本控制外是否还有其他标准名称,但我的意思基本上是:

  • 1.0
  • 1.1
  • 1.2
  • 1.3.1 Beta

Answers:


18

没有标准,但是您应该以一种对您有意义的方式进行操作,并包含跟踪该构建可能需要的所有信息。我曾在一家基本上将其分解成这样的公司工作:

[主要内部编号]。[次要内部编号]。[修订版]。[包装]

即版本:1.0.15.2

  • 主要版本号:表示游戏中的主要里程碑,从beta到发行版,从发行版到主要更新版,请递增。

  • 较小的内部版本号:用于功能更新,大错误修复等。

  • 修订:对现有功能进行的细微改动,小的错误修复等。

  • :您的代码保持不变,外部库更改或资产文件更新。

合并的更改会滚动到最重要的更改。例如,如果您要递增次要内部版本号,则修订版和软件包都将重置为0。

即使定义了类别,对于在修订版本和次要内部版本号之间实际跨越的功能类型仍然存在歧义。由你决定。如果列出了每次增加之前需要实现的功能列表,那么您还将有一个计划可以遵循,但最终由您决定适合哪些类别。


1
那真是太棒了,在我看来,到处都只是在谈论主要广告的次要版本号,而没有真正的解释。
2013年


10

堆栈溢出对此进行了精彩的讨论,名为“ 如何做版本号”,它引用了“ 版本样式指南”

摘要:

  • 进行不兼容的API更改时的主要版本
  • 以向后兼容的方式添加功能时的MINOR版本
  • 进行向后兼容的错误修复时的PATCH版本
  • 可以使用预发布和构建元数据的其他标签作为MAJOR.MINOR.PATCH格式的扩展名

6

据我所知,这还没有标准。实践会因公司,团队和项目而异:没有最佳实践之类的东西。最重要的不是实际的约定,而是每个人都遵守的事实。

也就是说,您提到的方案在已发布的游戏中非常普遍。1.0通常是金牌母版,修补程序将从此处开始:1.1、1.2 ...它也用于预发行客户版本,例如私有或公开Beta。

对于开发中的游戏,我很少看到使用此系统。通过其原子更改ID(例如Perforce更改列表编号)来引用构建更为常见。这对于其中所有内容(代码和资产)都存储在同一存储库中并且已经进行持续集成的中型项目特别有用。在这种情况下,同时具有原子更改号版本号是多余的并且容易出错。某些版本将在质量检查之后提升为一个里程碑:alpha,beta,候选发布者以及如此标记。

对于大型项目,“游戏版本”的简单概念不再适用。您将拥有多个平台,SKU,语言,单人游戏模式,多人游戏模式等。然后,版本管理将成为一项全职工作(有时称为数据管理器 -这是Ubisoft术语,在其他地方可能会有所不同) ,标记方案将变得更加复杂,并且高度依赖于实际制作的游戏。


哇,这本身就成了工作吗?我一直以为每个部门的负责人都会管理自己的版本控制。
2013年

2
@ChaoticLoki您需要在部门之间进行适当的协调,以确保例如关卡设计师正在开发最新的稳定可执行文件。或程序员可以找到谁在本地化文本中搞砸了一个变量(例如:“意大利语翻译器固定对话框X,同时不小心破坏了教程文本Y,但由于exe没有,我们无法恢复为旧版本“不兼容。Ar!帮助?”)。等等。在一个大团队中,您需要有人来照顾所有这一切。这实际上是行业中最具挑战性的工作之一。
Laurent Couvidou 2013年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.