使用獨立的Subsystem(CheatSubsystem),在遊戲運行時蒐集所有被實例化的Subsystem,以及其中帶有特定旗標的Function,透過一個介面顯示功能以及功能中所有需要的Input。
最終直接對底層調用Function來達到作弊系統0耦合的應用,之後可以帶到其他專案。
現階段只支援在C++的Subsystem中創建的Function,並且Input類型種類只支援int,float,string,bool,Actor。尚未支援Array類型的Input。目前也沒製作直接從物件上找所有支援作弊功能的Function。
進度影片
想變成Unreal達人再看
步驟0:先問程式或是製作相關功能的人是否有可以直接使用的C++ Function,有的話直接從步驟3開始看
步驟1:在C++創建需要的Subsystem,根據使用的時機,選擇繼承GameInstanceSubsystem,LocalPlayerSubsystem,WorldSubsystem,命名的檔名與路徑參考規範。創建完會自動新增兩個同名檔案(.h跟.cpp)




如果變數有跨場景會用到的需求,使用GameInstanceSubsystem
如果變數只有在單個場景會用到的需求,使用WorldSubsystem
如果變數有單機場景跨連線場景時會用到的需求,或是派對遊戲本地多人每個玩家有變數儲存的需求,使用LocalPlayerSubsystem
步驟2:點開IDE(看個人習慣使用的C++編輯器),找到剛才創建的.h檔案,在UCLASS()中新增Blueprintable以及BlueprintType,中間用逗號隔開

