flowchart TD
subgraph Server Shutdown
A[GameMode: Event EndPlay] --> B{Save All Structures};
C[GameState: Event EndPlay] --> D{Save All Tribes};
end
subgraph Player Leaves
E[PlayerState: Event EndPlay] --> F{Save Player's Tribe Info};
G[Character: Event EndPlay] --> H{Save Player's Stats, Inventory, Location};
end
subgraph Server Startup
I[GameMode: Event BeginPlay] --> J{Load All Structures};
K[GameState: Event BeginPlay] --> L{Load All Tribes};
end
subgraph Player Joins
M[Character: Event BeginPlay] --> N{Load Stats, Inventory, Location};
O[PlayerState: Event BeginPlay] --> P{Load Player's Tribe Info};
P --> Q[PlayerController: Event BeginPlay];
L --> Q;
Q -- 5s Delay --> R{Update Tribe UI};
end
H -- Writes to --> S[PlayerInfo_SaveGame.sav];
F -- Writes to --> S;
N -- Reads from --> S;
P -- Reads from --> S;
B -- Writes to --> T[Structures_SaveGame.sav];
J -- Reads from --> T;
D -- Writes to --> U[Tribes_SaveGame.sav];
K -- Reads from --> U;
Game User Settings API: 利用此API实现图形和视频设置的读取、应用和持久化存储。这是一个标准化的、跨平台的设置管理方案。
Enhanced Input System 运行时重映射: 核心难点在于动态修改InputMappingContext。正确流程是:获取EnhancedInputLocalPlayerSubsystem,清除所有现有映射,直接修改内存中的InputMappingContext对象(设置新的按键),然后将修改后的InputMappingContext重新添加到Subsystem中。