164 lines
4.2 KiB
Markdown
164 lines
4.2 KiB
Markdown
# Blueprint Spec Template
|
|
|
|
Use this template for every system file in `docs/blueprints/`. Replace all `{{placeholders}}` with system-specific values.
|
|
|
|
---
|
|
|
|
# {{System Number}} — {{System Name}} (`{{AssetType}}_{{Name}}`)
|
|
|
|
## Purpose
|
|
{{1-2 sentences describing what this system does and why it exists.}}
|
|
|
|
## Dependencies
|
|
- **Requires:** {{other systems this directly depends on}}
|
|
- **Required By:** {{which systems depend on this}}
|
|
- **Engine/Plugin Requirements:** {{e.g. GameplayTags, GASP, DeveloperSettings}}
|
|
|
|
## Class Info
|
|
| Property | Value |
|
|
|----------|-------|
|
|
| **Parent Class** | `{{ParentClassName}}` |
|
|
| **Class Type** | {{Blueprint, BlueprintComponent, Widget, etc.}} |
|
|
| **Asset Path** | `Content/Framework/{{Category}}/{{FileName}}` |
|
|
| **Implements Interfaces** | `{{I_Interfaces}}` |
|
|
|
|
---
|
|
|
|
## 1. Enums
|
|
|
|
```text
|
|
Enum Name: {{E_EnumName}}
|
|
(DisplayName = "{{Display Name}}")
|
|
|
|
Values:
|
|
{{Value1}} = 0 // Description
|
|
{{Value2}} = 1 // Description
|
|
{{Value3}} = 2 // Description
|
|
```
|
|
|
|
*List each enum the system defines or uses.*
|
|
|
|
---
|
|
|
|
## 2. Structs
|
|
|
|
### `{{S_StructName}}`
|
|
| Field | Type | Description |
|
|
|-------|------|-------------|
|
|
| `{{Field1}}` | `{{Type}}` | {{Description}} |
|
|
| `{{Field2}}` | `{{Type}}` | {{Description}} |
|
|
|
|
*List each struct the system defines. Include all fields with types and descriptions.*
|
|
|
|
---
|
|
|
|
## 3. Variables
|
|
|
|
### Configuration (Instance Editable, Expose On Spawn)
|
|
|
|
| Variable | Type | Default | Category | Description |
|
|
|----------|------|---------|----------|-------------|
|
|
| `{{VarName}}` | `{{Type}}` | `{{Default}}` | `{{Category}}` | {{Description}} |
|
|
|
|
### Internal (Private / Protected, No Expose)
|
|
|
|
| Variable | Type | Default | Category | Description |
|
|
|----------|------|---------|----------|-------------|
|
|
| `{{VarName}}` | `{{Type}}` | `{{Default}}` | `{{Category}}` | {{Description}} |
|
|
|
|
### Replicated (if multiplayer)
|
|
|
|
| Variable | Type | Condition | Description |
|
|
|----------|------|-----------|-------------|
|
|
| `{{VarName}}` | `{{Type}}` | `{{RepCond}}` | {{Description}} |
|
|
|
|
---
|
|
|
|
## 4. Functions
|
|
|
|
### Public Functions
|
|
|
|
#### `{{FunctionName}}` → `{{ReturnType}}`
|
|
- **Description:** {{What this function does}}
|
|
- **Parameters:**
|
|
| Param | Type | Description |
|
|
|-------|------|-------------|
|
|
| `{{ParamName}}` | `{{Type}}` | {{Description}} |
|
|
- **Blueprint Authority:** {{Client / Server / Multicast / Any}}
|
|
- **Flow:** {{brief description of logic flow}}
|
|
|
|
### Protected / Private Functions
|
|
|
|
#### `{{FunctionName}}` → `{{ReturnType}}`
|
|
- **Description:** {{What this function does}}
|
|
- **Parameters:**
|
|
| Param | Type | Description |
|
|
|-------|------|-------------|
|
|
| `{{ParamName}}` | `{{Type}}` | {{Description}} |
|
|
- **Flow:** {{brief description of logic flow}}
|
|
|
|
---
|
|
|
|
## 5. Event Dispatchers
|
|
|
|
| Dispatcher | Parameters | Bind Access | Description |
|
|
|------------|-----------|-------------|-------------|
|
|
| `On{{EventName}}` | `{{Type1}}`, `{{Type2}}` | `{{Public/Private}}` | {{When this fires}} |
|
|
| `On{{OtherEvent}}` | `{{Type1}}` | `{{Public/Private}}` | {{When this fires}} |
|
|
|
|
---
|
|
|
|
## 6. Overridden Events / Custom Events
|
|
|
|
### Event: `{{EventName}}`
|
|
- **Description:** {{What triggers this event and what it does}}
|
|
- **Flow:**
|
|
1. {{Step 1}}
|
|
2. {{Step 2}}
|
|
3. {{Step 3}}
|
|
|
|
---
|
|
|
|
## 7. Blueprint Graph Logic Flow
|
|
|
|
```mermaid
|
|
flowchart TD
|
|
A[BeginPlay / Initialize] --> B{Check Condition}
|
|
B -->|True| C[Do Action]
|
|
B -->|False| D[Alternate Path]
|
|
C --> E[Fire Dispatcher]
|
|
D --> F[Log Warning]
|
|
```
|
|
|
|
*Describe the main execution flow using a Mermaid flowchart.*
|
|
|
|
---
|
|
|
|
## 8. Communication Matrix
|
|
|
|
| Who Talks | How | What Is Sent |
|
|
|-----------|-----|-------------|
|
|
| `{{Source}}` | `{{I_Interface / Dispatcher / Direct}}` | `{{Data}}` |
|
|
| `{{Source}}` | `{{I_Interface / Dispatcher / Direct}}` | `{{Data}}` |
|
|
|
|
*List every other system this one talks to and the mechanism used.*
|
|
|
|
---
|
|
|
|
## 9. Validation / Testing Checklist
|
|
|
|
- [ ] {{Check 1}}
|
|
- [ ] {{Check 2}}
|
|
- [ ] {{Check 3}}
|
|
- [ ] Edge case: {{Edge case description}}
|
|
|
|
---
|
|
|
|
## 10. Reuse Notes
|
|
|
|
- {{Any notes about reusing this component in other contexts}}
|
|
- {{Things to watch out for during implementation}}
|
|
|
|
---
|
|
|
|
*Template version 1.0 — Reference file for all docs/blueprints/ specifications.* |