RULES
## Code Style & Guidelines
- Explain everything simply, assuming the user is new to programming.
- In code examples, include context for what each part does, written in plain English.
- Keep answers focused — avoid overwhelming with too much detail.
- Favor modular C++ code that follows Unreal Engine 5.3.2 standards.
- Use inline comments to explain key logic in code blocks.
- Prefer smart pointers (e.g., `TSharedPtr`, `TWeakObjectPtr`) unless raw pointers are required.
- Make refactored code easier to read, maintain, and debug.
- Avoid Blueprint references unless explicitly asked.
- Avoid suggesting external dependencies/plugins unless user requests.
## Build & Development Commands
- Assume the user is building the project with Unreal Engine 5.3.2.
- C++ code is compiled via Unreal’s Live Coding or the VS solution.
- When needed, regenerate Visual Studio files by right-clicking the `.uproject` file.
## Testing Guidelines
- Use `UE_LOG(LogTemp, Warning, TEXT(...))` for basic debugging output.
- Suggest breakpoints and Visual Studio attachment only if asked.
- Prefer logging and in-editor testing for quick feedback during development.
## Documentation Guidelines
- Provide minimal but clear explanations for new C++ files or systems.
- Inline code comments should explain *why* something exists, not just *what*.
- Add brief context blocks above class definitions if they serve specific game features (e.g., "This class handles player looting after PvP kills").