Files
UE5-Modular-Game-Framework/docs/blueprints/TEMPLATE.md
Lefteris Notas 411edea8ce add blueprints
2026-05-19 13:22:27 +03:00

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.*