殘酷的植物羣收穫修復
實施一種簡單的蠻力方法來修復天際的收穫重生蟲。
截圖 共 5 張
模組介紹 作者原文
實施一種簡單的蠻力方法來修復天際的收穫重生蟲。
非SE版本
這些文件實際上應該可以在原始的Skyrim中使用。
要求
需要SKSE64:
用法
像往常一樣收穫植物。
附加信息
天際有一個惱人的錯誤,收穫的植物在加載保存遊戲時不會重生。
以下mod頁面詳細介紹了這一點:
bluedanieru的Flora Respawn Fix
wiseman303的植物修復(僅限OG天際?)
wiseman303寫了一篇技術細節文章,更詳細地解釋了這些修復工作原理。
Brutal Flora Harvest Fix採用不同的方法 - 將腳本“鉤子”附加到ObjectReference。
修改後的ObjectReference腳本將單個函數調用插入以下每個事件中:
OnActivate - 存儲我們的上一個收穫時間(到一個新的浮點值)。
OnCellAttach - 修復超過3天前收穫的任何參考文獻。
插入的調用首先檢查SKSE的本機IsHarvested函數,以查看是否需要任何工作。
這有一些優點:
它與遊戲中的任何可收穫物體,香草或改性物都普遍兼容。
它可以追溯現有的保存,也可以隨時安全地卸載。
它是輕量級的,任何引用的OnCellAttach鉤子每次保存負載只會觸發一次。
它非常友好,因爲它沒有爲任何其他事件註冊任何引用。
與其他收穫修復一樣,它將收穫再生與細胞重置分離。
還有一些缺點:
它僅適用於單元格更改後(由於OnCellAttach事件的性質)。
它爲ObjectReference中的其他空掛鉤事件添加了(可忽略的?)腳本開銷。
如果SKSE的ObjectReference.pex腳本發生了變化(它已經不存在多年),則需要更新它。
OnCellAttach掛鉤可能在使用null表單的引用上失敗,將錯誤轉儲到Papyrus日誌。
(這似乎無害,因爲默認的OnCellAttach事件無論如何都會爲空)
在某些極少數情況下,可能會錯過更新引用的網格(請參閱腳本源)。
它仍然不像原生SKSE插件那樣乾淨......
可以通過編輯foxHarvestFix.psc並重新編譯腳本來更改重新生成的時間(定義爲3天)。
(對不起,這並不容易!試圖支持在遊戲中調整這個感覺有點過於複雜)
兼容性
應與任何不能替代SKSE的ObjectReference.pex腳本的東西兼容。
卸載步驟
只需將以下內容替換爲SKSE的原始文件:
數據\腳本\ objectreference.pex
數據\腳本\來源\ ObjectReference.psc
並刪除以下內容:
數據\腳本\ foxHarvestFix.pex
數據\腳本\來源\ foxHarvestFix.psc
隨時可以安全地從保存中卸載;不需要保存清除。
——————————————————————————————————————————————
Non-SE Version
These files should actually work in original Skyrim as-is.
Requirements
Requires SKSE64:
Usage
Just harvest plants as usual.
Additional Information
Skyrim has an annoying bug where harvested plants don't respawn when loading a save game.
This is covered in great detail on the following mod pages:
bluedanieru's Flora Respawn Fix
wiseman303's Flora Fixes (OG Skyrim only?)
wiseman303 wrote a Technical Details article explaining in more detail how these fixes worked.
Brutal Flora Harvest Fix takes a different approach - attaching a script "hook" to ObjectReference.
A modified ObjectReference script inserts a single function call into each of the following events:
OnActivate - to store our last harvest time (into a single new float value).
OnCellAttach - to fix any references last harvested more than 3 days ago.
The inserted calls first check SKSE's native IsHarvested function to see if any work is required.
This has some advantages:
It is universally compatible with any harvestable object in the game, vanilla or modded.
It is retroactive on existing saves, and may also be safely uninstalled at any time.
It is lightweight, with any reference's OnCellAttach hook only firing once per save load.
It is bloat-friendly, as it does not register any references for any additional events.
Like other harvest fixes, it decouples harvest respawning from cell resets.
And also some disadvantages:
It only applies after a cell change (due to the nature of the OnCellAttach event).
It adds a (negligible?) script overhead to the otherwise empty hooked events in ObjectReference.
It would need to be updated if SKSE's ObjectReference.pex script ever changes (it hasn't in years).
The OnCellAttach hook can fail on references with null forms, dumping an error to Papyrus log.
(This seems harmless as the default OnCellAttach event would otherwise be empty anyway)
In certain rare cases, it's possible to miss updating a reference's mesh (see script source).
It's still not as clean as a native SKSE plugin could be...
Respawn time (def. 3 days) may be changed via editing foxHarvestFix.psc and recompiling the script.
(Sorry this isn't easier! Trying to support adjusting this in-game felt a little too complicated)
Compatibility
Should be compatible with anything that doesn't also replace SKSE's ObjectReference.pex script.
Uninstall Steps
Simply replace the following with SKSE's original files:
Data\Scripts\objectreference.pex
Data\Scripts\Source\ObjectReference.psc
And remove the following:
Data\Scripts\foxHarvestFix.pex
Data\Scripts\Source\foxHarvestFix.psc
Should be safe to uninstall from saves at any time; no save cleaning necessary.
安裝與使用 安裝:按包內說明操作
- 解壓本站下載的壓縮包,先讀包內的 readme / 說明檔案。
- 這類遊戲沒有通用的模組管理器:有的模組直接替換遊戲檔案、有的放進遊戲專屬的 Mods 資料夾、有的要先裝遊戲對應的社群載入器或工具,以包內說明為準。
- 嚴格按說明放置檔案;標註「前置依賴」的模組需要把依賴一併裝好。
- 啟動遊戲確認載入成功;部分遊戲需要在設定或模組選單裡手動啟用。
不同遊戲、不同模組的安裝位置差異很大,包內說明是最可靠的依據。