AI instructions for helping Jack Taylor develop his Unity 2D turn-based game with C#. Includes documentation maintenance guidelines, coding patterns, and project context.
AI assistant configuration for working with Jack Taylor on **Stage of Dreams**, a Unity 2D turn-based game project. This skill provides context-aware assistance for learning Unity and C# development while maintaining comprehensive project documentation.
**Jack Taylor** - Aspiring game developer learning Unity and C#
**Learning preferences:**
**Stage of Dreams** is a Unity 2D turn-based game featuring:
**Current Sprint:** GameState Management & Minigame Implementation (Feature/Minigames branch)
When assisting Jack:
The project maintains four primary documentation files:
| File | Purpose |
|------|---------|
| `Docs\Class Hierarchy.md` | Architecture reference with Mermaid diagrams, class listings, system documentation |
| `.github\copilot-instructions.md` | AI guidance, coding patterns, project context |
| `Docs\Project_Roadmap.md` | High-level milestones and feature planning |
| `Docs\TROUBLESHOOTING.MD` | Known issues and solutions |
**When making code changes, always check if documentation needs updates:**
1. Creating new classes or systems
2. Modifying class properties or methods
3. Adding or removing features
4. Changing architecture patterns
5. Implementing planned (⏳) features
6. Discovering issues or solutions
After implementing changes, update relevant files:
**Class Hierarchy.md:**
**copilot-instructions.md:**
**TROUBLESHOOTING.MD:**
**Project_Roadmap.md:**
**Status indicators:**
**Ask for clarification when encountering:**
**Documentation best practices:**
Follow these established patterns in the Stage of Dreams project:
**ScriptableObjects for data:**
```csharp
[CreateAssetMenu(fileName = "NewDialogNode", menuName = "Dialog/Dialog Node")]
public class DialogNode : ScriptableObject
{
public string nodeID;
public string dialogueText;
// ... properties
}
```
**Event-driven architecture:**
```csharp
// Subscribe to events
DialogNavigator.OnDialogueStart += HandleDialogueStart;
// Raise events
OnDialogueStart?.Invoke(currentNode);
```
**Singleton pattern for managers:**
```csharp
public class GameStateManager : MonoBehaviour
{
public static GameStateManager Instance { get; private set; }
void Awake()
{
if (Instance == null)
{
Instance = this;
DontDestroyOnLoad(gameObject);
}
else
{
Destroy(gameObject);
}
}
}
```
**Unity Editor customization:**
```csharp
#if UNITY_EDITOR
using UnityEditor;
[CustomEditor(typeof(DialogNode))]
public class DialogNodeEditor : Editor
{
public override void OnInspectorGUI()
{
// Custom inspector code
}
}
#endif
```
**Completed Features:**
**Known Technical Debt:**
**Core Systems:**
**Minigames:**
**Documentation:**
**Scenario 1: Adding a new dialog feature**
User: "I want to add a delay before auto-advancing to the next dialog node."
Assistant response should:
1. Explain the concept of coroutines in Unity
2. Show code example using `yield return new WaitForSeconds()`
3. Reference existing `DialogNavigator.cs` patterns
4. Suggest where to add the delay in the dialog flow
5. Remind to update `Class Hierarchy.md` with the new property/method
**Scenario 2: Implementing minigame UI**
User: "How do I connect the RememberTheScript minigame events to the UI?"
Assistant response should:
1. Explain event subscription pattern already used in the project
2. Show example of subscribing to `RememberTheScript` events in `DialogManager`
3. Reference existing event handling in `DialogNavigator`
4. Provide UI Toolkit integration example
5. Update documentation checklist for this implementation
**Scenario 3: Debugging a known issue**
User: "The SolutionFileModifier isn't working in Unity 2023."
Assistant response should:
1. Check `TROUBLESHOOTING.MD` for known issues
2. Explain the .sln vs .slnx format change
3. Provide workaround or solution
4. Document the solution in `TROUBLESHOOTING.MD` if new
Leave a review
No reviews yet. Be the first to review this skill!
# Download SKILL.md from killerskills.ai/api/skills/stage-of-dreams-unity-development-assistant/raw