❤❤新課程需要你的寶貴意見❤❤

2017年6月12日 星期一

Unity Fungus 3.5 存檔讀檔功能 教學




附上官網說明的中文摘要翻譯,節錄自:
http://fungusdocs.snozbot.com/save_system.html

翻譯:陳間時光  (如翻譯有誤請不吝指教)


存檔選單屬性(Save Menu properties)
在存檔選單裡有四個你可能要設定的主要屬性:

儲存資料的鑰匙(Save Data Key:用來儲存遊戲資料到玩家設定檔(Player Prefs) 裡的字串鑰匙,如果你在同一個Unity專案裡有好幾個遊戲的話,每一個都要使用獨立的鑰匙

啟動時讀取(Load On Start:在遊戲啟動時自動讀取上一次的進度存檔

自動存檔(Auto Save:自動將每一個儲存點儲存到磁碟裡,當這個選項打開的時候,存檔跟讀檔的按鈕都會被關掉

重新開始時刪除存檔(Restart Deletes Save:當玩家重新啟動遊戲時從磁碟刪除進度存檔,當你要測試遊戲時這個選項很有用,確保啟動遊戲時的進度是空白狀態

注意 如果你的遊戲有好幾個場景 (例如:Load Scene指令),確保在 File -> Build Settings 清單裡登記所有的場景名稱

(譯註:遊戲中使用到的場景名稱都要登記在這個清單裡,不然無法讀取場景)


遊戲啟動(Game Startup

別忘了玩家可以在任何時候讀取或重新啟動遊戲,遵照這些簡單的規則來確保各種情況下的遊戲啟動都正確地運作:

在遊戲裡的每一個場景只能有一個"是開始進度點"(Is Start Point)打勾的儲存點指令(Save Point command)

如果你的遊戲有好幾個場景的話,確保每一個場景都有定義一個開始儲存點而且是該場景裡第一個執行的指令,避免使用"遊戲已開始"(Game Started) 委派,因為這個只在遊戲第一次開啟的時候才有作用,而不是讀取存檔的時候,讀取存檔之後,你要從儲存點開始執行,而不是整個Flowchart重新開始

當你想在特定儲存點讀取後執行特定的Block時,使用"儲存點已讀取"委派(Save Point Loaded ),這個委派將在執行恢復儲存點指令之前呼叫, 所以這讓你在進度恢復之前有機會做設定的工作
 (譯註:就是讀進度之前可以執行某些Block,像播放對應的背景音樂之類的)






===中英對照版===

Save Menu properties
存檔選單屬性

There are 4 main properties that you might want to configure in the Save Menu.
在存檔選單裡有四個你可能要設定的主要屬性

Save Data Key: The string key used to store save game data in Player Prefs.
儲存資料的鑰匙:用來儲存遊戲資料到玩家設定檔(Player Prefs) 裡的字串鑰匙.

If you have multiple games defined in the same Unity project, use a unique key for each one.
如果你在同一個Unity專案裡有好幾個遊戲的話,每一個都要使用獨立的鑰匙

Load On Start: Automatically load the previously saved game on startup.
啟動時讀取:在遊戲啟動時自動讀取上一次的進度存檔

Auto Save: Automatically save the game to disk at every Save Point.
自動存檔:自動將每一個儲存點儲存到磁碟裡

When this option is enabled the Save and Load buttons are disabled.
當這個選項打開的時候,存檔跟讀檔的按鈕都會被關掉

Restart Deletes Save: Delete the save data from disk when the player restarts the game.
重新開始時刪除存檔:當玩家重新啟動遊戲時從磁碟刪除進度存檔

This is useful when testing your game to ensure you’re starting from a blank save state.
當你要測試遊戲時這個選項很有用,確保啟動遊戲時的進度是空白狀態

N.B. If your game uses multiple scenes (e.g. via the Load Scene command),make sure to add all the scene to the Scenes in Build list in the Build Settings.
注意 如果你的遊戲有好幾個場景 (例如:Load Scene指令),確保在 File -> Build Settings 清單裡登記所有的場景名稱
(譯註:遊戲中使用到的場景名稱都要登記在這個清單裡,不然無法讀取場景)

Game Startup
遊戲啟動

Remember that the player can choose to load or restart the game at any time.
別忘了玩家可以在任何時候讀取或重新啟動遊戲

Follow these simple rules to ensure game startup is handled correctly in all cases.
遵照這些簡單的規則來確保各種情況下的遊戲啟動都正確地運作

Every scene in your game should have exactly one Save Point command with the Is Start Point property enabled.
在遊戲裡的每一個場景只能有一個"是開始進度點"(Is Start Point)打勾的儲存點指令(Save Point command)

If you have multiple scenes in your game,
如果你的遊戲有好幾個場景的話

make sure each one has a start Save Point defined and that it’s the first command executed in the scene.
確保每一個場景都有定義一個開始儲存點而且是該場景裡第一個執行的指令

Avoid using the Game Started event handler.
避免使用"遊戲已開始" 委派

This will only work correctly the first time the game is played, not after a saved game is loaded.
因為這個只在遊戲第一次開啟的時候才有作用,而不是讀取存檔的時候

After loading a saved game, you want execution to start from the Save Point, not at the beginning of your Flowchart again.
讀取存檔之後,你要從儲存點開始執行,而不是整個Flowchart重新開始

Use the Save Point Loaded event handler when you want to execute a Block when specific Save Points are loaded.
當你想在特定儲存點讀取後執行特定的Block時,使用"儲存點已讀取"委派

These event handlers are called before execution resumes at the Save Point command,
這個委派將在執行恢復儲存點指令之前呼叫

 so it gives you a chance to do setup work before gameplay resumes.
 所以這讓你在進度恢復之前有機會做設定的工作
 (譯註:就是讀進度之前可以執行某些Block,像播放對應的背景音樂之類的)

1 則留言:

  1. 請問一下 如果我的遊戲會有好幾個關卡每次破關都會load scences 我想直接用自動存讀檔的功能 這樣如果我關掉遊戲在打開遊戲 下一次會從最新的關卡開始嗎?

    回覆刪除

留言給作者加油打氣