Angband

如何確定 Angband 存檔文件的版本?

  • December 15, 2019

我有一些非常舊的保存文件。我不知道是哪個版本的 Angband 創建了它們。我如何確定這一點,以便我可以找到正確的版本來繼續播放它們?

不適用於 3.1.1 或更高版本。從原始碼 ( savefile.c) 來看,錯別字完好無損:

* The savefile deosn't contain the version number of that game that saved it;
* versioning is left at the individual block level.  The current code
* keeps a list of savefile blocks to save in savers[] below, along with
* their current versions.

你也不能從方塊版本中推斷出遊戲版本:自從採用這種機制以來,保存文件格式沒有發生不兼容的變化,所以所有方塊仍然是版本 1。

對於 2.4.0(或可能更早)到 3.1.0-beta 的版本,文件的前三個字節標識了版本號,順序為“主要、次要、更新檔”,儘管 3.0 的原始碼暗示該順序可能是 2.5 系列的“次要、主要、更新檔”。

辨識版本的最簡單方法可能是打開 3.0.9 版本的存檔:如果存檔文件是 2.9 之前的版本或 3.1.0-beta 版本,遊戲將顯示提及版本的錯誤消息,如果對於 3.1.1 或更高版本,遊戲不會將其辨識為有效的保存文件,如果是 2.9.0 到 3.0.9,您將可以按原樣玩。

引用自:https://gaming.stackexchange.com/questions/361462