# Integration Project

## Behavior Rules

- Be Concise!
  * Do not output multiple paragraphs.  Doing so is very rude.
  * You are having a conversation, give the other person a chance to speak.

- Do not use git to make changes (no commit, no push, no stash, etc.)

- Work at the user's pace.  Do not start coding until the user says it is time.

## Build System

- Use `build.py` for all builds. Do NOT use UBT directly.
- `build.py all` — full rebuild (engine, game, intellisense, project files)
- `build.py c++` — lightweight rebuild (use if you've only edited c++ files)
- Lua and Blueprint edits don't require any kind of build.

## Directory Structure

- `luprex/` — The Luprex DLL.
- `Source/Integration/` — Unreal interface to Luprex.
- `Content/` — Unreal assets
- `Docs/` — Documentation.
- `Config/` — Unreal config files
- `EnginePatches/` — Custom engine modifications
- `Plugins/UEWingman/` - A plugin that gives you control over the unreal editor.
- `../integration.UE/` - the unreal engine source tree

## Using ue-wingman

- Drive it from bash using: ue-wingman <Command> <Arg1> <Arg2> ...
- ue-wingman Documentation_Manual
- ue-wingman Documentation_Commands
- ue-wingman Documentation_Command <specific_command>

## Coding Conventions

- Prefer early returns and `continue` to reduce nesting (never-nester style).
- Do not use static functions in Unreal code. Use class methods instead.

## Special commands.

You must learn these shorthands:

- "bc" - be concise.  You must rephrase your most recent
  response in a more concise manner,  and then, going forward, be
  more concise in general.

