简化游戏安装

在主机而不是 Windows 上运行的游戏的一个主要优势是安装过程或缺少安装过程。 当游戏首次在主机上运行时,玩家会做出一些选择或确认,并且几乎可以立即开始玩游戏。 相比之下,在 Windows 上安装游戏更为复杂,因为它需要大量用户输入,并且安装过程可能很长。 但是,可以改进此安装过程,以便为基于 Windows 的游戏的玩家提供更好的体验。 本文概述了 Windows 游戏开发人员可以而且应该实现的一些概念,以改善整体体验。

典型游戏安装

比较安装方便程度和开始玩游戏所需的时间时,典型的 Xbox 体验比 Windows 好得多。 图 1 中的流程图显示了 Xbox 和 Windows 上的典型安装过程,以便进行比较。

图 1. 典型安装过程,Xbox 与 Windows

xbox-vs-pc

简化的游戏安装

但是,在 Windows 上安装游戏对用户施加的更高要求不需要。 通过实现以下概念,可以减少用户必须完成的步骤数,从而缩短安装所需的时间。

提前提出所有问题

在不会停止安装的选项之前,应提供玩家在安装过程中选择的所有可能导致安装中止的选项;最坏的情况是为玩家提供一个选择,该选择可能导致在从安装媒体完全复制游戏后中止安装。 如果安装需要交换多个磁盘才能完成,则这尤其令人沮丧。 应将安装程序设计为询问所有重要问题 (例如在过程开始时接受 EULA) ,以便无需在安装完成时或接近其完成时回滚。

你还可以在游戏首次启动时提示用户接受 EULA 并输入产品密钥,而不是在安装过程中请求这些密钥。 在这种情况下,拒绝接受 EULA 或在输入产品密钥期间取消不会回滚安装,因为这些提示是游戏本身的一部分。 如果已预安装或 OEM 方案,这可能很有用。 但是,请注意不要在初始启动期间提示用户做出需要管理凭据的选择。

提供特殊安装模式

理想情况下,Windows 游戏安装程序应仅提供完全自动和自定义的安装模式,并且两者之间没有任何内容。

自动模式不应询问创建正常运行的安装所需的任何其他问题,只需使用默认设置而不提示其他选项。 许多玩家并不关心游戏在硬盘上的位置或初始游戏设置 ,他们只想尽快玩游戏。

自定义模式应仅适用于需要或想要更改安装路径或其他安装选项的 Power 用户,而不应为默认模式。

自定义模式可以选择完全安装,也可以选择仅安装玩游戏所需的文件的最低安装。 如果玩家选择最低安装,游戏可以使用按需安装或流式传输技术来读取剩余的安装数据,这样玩家就可以快速开始玩游戏,而无需等待完全安装完成。 但是,以这种方式安装数据会影响游戏引擎的设计。 有关按需安装内容的详细信息,请参阅 游戏的按需安装

尽量减少安装问题的数量

在这两种安装模式下,应尝试限制在安装过程中提示玩家的次数。 这将减少安装和运行游戏所需的读取量。 如有必要,安装完成后应只有一个跟进提示。 可以看到,图 1 中显示的示例包含过多的安装后提示。

将可选组件更改为所需组件

使安装所有组件是必需的,而不是使其中的任何一个可选,除非有充分的理由这样做。 只需安装所有组件即可使游戏开始,而不会进一步延迟和大惊小怪。

始终安装 DirectX,并且以无提示方式进行安装

强烈建议游戏以无提示方式安装生成游戏所针对的 DirectX 可再发行组件。 DirectX 安装过程旨在验证是否需要更新任何内容,并在不需要更新时快速返回。 因此,无需询问用户是否要安装 DirectX。 可以通过从安装包运行以下命令来完成 DirectX 的无提示安装: dxsetup.exe /silent

询问用户是否要安装 DirectX 可能会导致许多问题。 例如,如果用户假定他安装了最新的可再发行组件,并选择跳过 DirectX 的安装;无论如何,游戏的安装都可以成功继续。 但是,如果游戏需要特定版本的 D3DX 或跳过的其他更新功能,则游戏将不起作用,并且用户将非常沮丧。

如果出于某种原因,必须询问用户是否要安装 DirectX,那么如果用户选择不安装 DirectX,安装程序至少应中止并回滚整个安装过程。 回滚安装将避免在游戏启动时系统未安装最新版本的 DirectX 而导致的任何错误。

请注意,必须交付游戏所针对的可再发行组件,而不是简单地从最新的 DirectX SDK 交付可再发行组件。 最新的可再发行组件可能不包含在以前版本中找到的所有组件。

安装程序检查查看已安装的内容并确定是否需要重新启动系统,这一点也很重要。 如果 DirectX 是最新的,则复制一个 DLL 应该不需要重新启动。

考虑 EULA

DirectX EULA 可以且应该追加到游戏开发人员的 EULA 中。 允许用户同意开发人员的 EULA 而不是 DirectX EULA 是没有意义的。 用户必须同意这两个 EULA,或者不安装游戏。 如果开发人员认为她必须为用户提供选择,如果用户选择不同意 DirectX EULA,则整个安装应会失败。

如果可能,请咨询你的法律部门,看看你是否可以完全避免 EULA,并使用收缩包装的 EULA,就像使用主机游戏一样。 这将避免询问用户是否要接受 EULA。 DirectX EULA 需要追加到收缩包装的 EULA;否则,必须显示并接受 DirectX EULA,这违背了使用收缩包装 EULA 的目的。

收缩包装的 EULA 的一个例外是内容编辑器。 任何编辑器都需要在编辑器安装期间或首次启动编辑器时显示 EULA。 许多玩家只对游戏感兴趣,而对制作内容不感兴趣,因此安装编辑器应该是一个单独的过程。

安装后自动启动

几乎所有玩家都希望在收到游戏后立即玩游戏。 默认情况下,安装程序应在完成安装后启动游戏,尽管在自定义安装中,最好是在用户可以替代的检查框中指定此项。

优化安装性能

开发人员应测试其安装,以确定安装所需的时间。 开发人员可以使用最新版本的安装工具和优化安装介质上的数据布局来缩短安装时间。 大多数 DVD 创作工具都有布局优化选项,这些选项可以在不增加开发工作负载的情况下缩短安装时间。

在安装过程中注册到 Windows 防火墙

如果游戏可以作为服务器运行,或者游戏网络模型是对等的,请在安装时将游戏注册到 Windows 防火墙。 这将防止当用户尝试访问网络时,防火墙对话框在游戏中间弹出。 如果游戏是纯客户端,则安装程序不应将游戏添加到防火墙的例外列表中。

有关详细信息,请参阅面向游戏开发人员的 Windows 防火墙。

为所有用户安装,而不仅仅是当前用户

仅默认为所有用户安装游戏。 这将允许系统上的任何新用户玩游戏,而无需为他们安装游戏。 如果在Least-Privileged用户帐户上尝试安装所有用户,安装程序将失败或提示用户输入管理员密码。 因此,在为所有用户提供安装选项之前,请尝试检测帐户是否具有适当的权限。 如果用户选择仅为当前用户安装游戏,请确保将安装路径更改为用户配置文件中的某个位置。 理想情况下,将路径更改为非漫游应用程序数据 (的某个位置,例如,CSIDL_LOCAL_APPDATA) 的子目录。

简化安装示例

图 2 中的示例演示了在 Windows 中安装游戏的改进过程,其中包含简化的安装对话框。

图 2. 简化的安装过程

安装

以下是需要注意的要点:

  • 插入安装光盘后,安装程序会自动启动, (自动运行) 。
  • 如果计算机上尚未安装游戏,则不会显示初始屏幕(其中包含安装、删除、查看网站或退出的选项)。
  • “安装”对话框是安装程序显示的第一个对话框。
  • 安装 ”按钮是自动安装模式的实现。
  • “选项”按钮是自定义安装模式的实现。
  • 取消 ”按钮将立即退出安装程序。 由于启动安装程序对用户来说是一项简单操作,因此请不要提示确认。
  • 用户接受 EULA 并输入有效的产品密钥后,将开始安装。
  • 安装过程完成后,游戏将自动启动或显示一个对话框,提醒用户安装已完成并提供任何其他选项,具体取决于是否选择了 “安装后运行游戏 ”。
  • 为方便起见, “运行游戏 ”复选框提供了另一个启动游戏的机会。 默认情况下,此选项始终处于未选中状态,因为只有在 “安装 选项”对话框中未选择“ 安装后运行游戏” 时,才能显示“ 安装 完成”对话框。
  • 确定” 按钮会关闭对话框,可以选择对 “运行 ”和“ 查看自述文件 ”复选框执行操作。

总结

玩家希望尽快玩游戏。 玩家最不想做的事情是浏览对话,做出与他或她已安装的所有其他游戏相同的选择。 实施这些想法可以缩短玩家在 Windows 上安装游戏所花费的时间,并帮助提高 Windows 游戏体验的整体质量。