2010-12-19 133 views
2

最近我在我最喜欢的游戏机(N64)上玩纸马里奥,我正在考虑游戏中的所有内容以及它提供的内容。但我无法摆脱我的想法就是节省。有指定的保存区域,但是如何保存保存的数据?说球员在保存地点xxx与yyy状态(健康,硬币等)。保存游戏状态?

我的问题是,什么样的游戏开发创建保存点时的良好做法,而当你养成类游戏,你去指定的保存区,无缝集成的保存区,或者根本就没有?谢谢。

+0

认为你会在这里有更好的运气:http://gamedev.stackexchange.com/ – 2010-12-19 00:13:35

+0

标准似乎节省了不太靠谱。保存一些值 - 健康,exp,库存等,以及保存位置的有限列表之一。保存仿真器等状态可以让我印象深刻。 – 2010-12-19 00:17:28

回答

1

这取决于你的游戏有多复杂,以及事情返回到他们的位置有多重要。 有些游戏可以简单地保存玩家库存和其他关于玩家及其在游戏中的位置/进程的重要统计数据。当您返回到先前级别时,该级别的状态将重置为默认级别。

其他更复杂的游戏,比如策略/模拟游戏以百万计的可追踪元素可以径直往整个仿真状态到磁盘。

3

设计一个保存系统时最好的选择就是规划最坏的并支持完整的保存状态。这样你就可以灵活地做任何事情。此外,通常即使使用保存点系统,您也需要跟踪大量状态数据,并且通常只需保存世界状态就成为最简单的方法(假设您可以无缝地将大量数据保存在背景中你的游戏,或者,你愿意接受一个“保存...”屏幕)。

无论您选择的任何地方保存,或保存点,是真的东西是深受你的设计的影响,以及如何你想玩家的行为。例如,Halo游戏使用检查点保存状态系统,它只在特定时间保存。他们这样做是为了确保你必须先完成一次任意的相遇,然后才能保存并取得进展。但是它保存了游戏的整个状态,所以当你从这一点重新加载时,事情就像你离开它一样。

其他游戏,比如PC上经典的FPS游戏,只是让用户在任何地方保存,但是这很快将成为过去的事情如游戏后获得重要事件在节能好。

这就是真正的重要组成部分,是确保玩家永不丢失的进步,或者,如果失去进步是你设计的一部分,它不是太惩罚。

至于保存数据的实际问题,这只是写入所有想要存储的信息的问题。实现必然依赖于你运行的代码。如果您手动管理所有自己的内存,完整保存状态通常会执行类似于构建完整内存转储的操作。类似于最终幻想游戏的检查点系统将简单地保存你的角色信息,位标志代表游戏事件,以及你的检查点本身。

更详细的答案需要您提供更详细的信息。